Deworker Pro
1.41K subscribers
5 photos
187 links
Download Telegram
Помимо отдельных вопросов сегодня добавлено много интересных вопросов с подробными ответами из комментариев:

https://deworker.pro/qna/comments
На декабрьском стриме мы познакомились с идеями разделения кода на модули и микросервисы.

Мы разобрали всё это на своём примере большого магазина, но от вас поступили предложения сделать это и на ваших примерах для ваших предметных областей.

Также часто спрашивают о том, как раздробить на модули или микросервисы не новый, а уже имеющийся монолитный проект.

Пришла пора ответить на эти вопросы и рассмотреть паттерны и антипаттерны разделения кода на других примерах. И показать практики по разделению уже существующих проектов.

Это мы сделаем на новом большом практическом стриме. До встречи в эфире с участниками!
Если до или после завтрашнего стрима появится желание вспомнить содержание прошлого стрима, то для удобства просмотра добавили тайм-коды:

https://deworker.pro/blog/stream-modules
Из-за жутких проблем со связью решено провести скоростной интернет и провести эфир в другой день. Заодно подготовлю больше кода с примерами. И можете в комментарии под постом скидывать свои вопросы и примеры, на которые отвечу сразу или разберём на стриме.

О дате стрима сообщу здесь и рассылке.
Deworker Pro
Из-за жутких проблем со связью решено провести скоростной интернет и провести эфир в другой день. Заодно подготовлю больше кода с примерами. И можете в комментарии под постом скидывать свои вопросы и примеры, на которые отвечу сразу или разберём на стриме.…
Скоростной интернет проведён и успешно протестирован. Так что можем перепровести наш стрим. Сделаем это уже во вторник 19 сентября в 18:00 по московскому времени.

Спасибо активным участникам, которые прислали дополнительные вопросы и свой код на разбор. Все примеры добавлены в программу. И больше проработан код по работе с очередями в RabbitMQ c реализацией паттерна Outbox.

До встречи с участниками на стриме!
Спасибо зрителям за хорошую компанию! Мы разобрали принципы избавления от лишних связей и спрограммировали работу с очередями для общения модулей через события.

Теперь пришла пора рассмотреть другие практические примеры и ваши вопросы. Для этого завтра 26 сентября в 18:00 по московскому времени проведём вторую часть стрима.

А пока для удобства просмотра к первой части добавлены тайм-коды.
Большое спасибо зрителям нашего эпичного стрима за отличную компанию! Мы с вами это сделали!

Для удобства просмотра и поиска к обеим частям стрима проставлены подробнейшие тайм-коды. Если вы ещё не всё посмотрели, то самое время начать.
Однажды до большого стрима мы записали мегаэпизод про работу HTTP-сервера и заблуждения PHP-программистов. Пришло время сделать что-то эпичное снова.

В этот раз записали большой мегаскринкаст про устройство тестовых фреймворков. Там мы напишем с нуля свой тестовый фреймворк по примеру PHPUnit. В нём как в оригинале сделаем автосканирование тестовых файлов, тестирование ожидаемых исключений и написание параметризованных тестов с провайдерами данных через PHP-атрибут DataProvider.

Заодно отрефакторим полученный код, избавив его от нарушения инкапсуляции и от побочных эффектов записи результатов и прямого вывода на экран. Вынесем принтеры сводки и прогресса запуска и сделаем слабосвязанную архитектуру с использованием событий.
Продолжаем моделирование предметной области аукциона через практику Event Storming. Сегодня завершим этап Big Picture для понимания общей картины бизнеса. В эпизоде проанализируем процесс проведения торгов, пополнение баланса, резервирование оплаты и все этапы сделки.
На прошлом стриме мы с вами разобрались с разделением кода на модули и микросервисы. Продолжаем стримы на полезные смежные темы.

В этот раз поговорим про оптимизацию запуска и работы PHP-приложений. От простого включения OpCache, кеширования конфигурации и ленивой инициализации сервисов до Preload с JIT и RoadRunner, асинхронности, использования Fiber-ов и других нюансов в разных фреймворках. Приходите на стрим, чтобы провести вечер с пользой!

Реклама ООО «Деворкер» ИНН 7840083887
В кабинете на сайте появилась возможность сменить Email профиля.

Если хотите перейти с неудобной для себя почты на более удобную, то теперь это можно сделать, подтвердив новый адрес.
Deworker Pro
На прошлом стриме мы с вами разобрались с разделением кода на модули и микросервисы. Продолжаем стримы на полезные смежные темы. В этот раз поговорим про оптимизацию запуска и работы PHP-приложений. От простого включения OpCache, кеширования конфигурации…
К записи первой части стрима для удобства просмотра добавили тайм-коды. И скоро проведём вторую часть, где рассмотрим использование файберов и написание проектов на асинхронных фреймворках. Тайм-кодами и датами дополнили пост на сайте. Если ещё не посмотрели первую часть, то лучше это сделать до начала второй.
А для подписчиков на днях выйдут скринкасты про моделирование бизнес-процессов в Event Storming и про автообновление PHP-синтаксиса с помощью Rector.
Deworker Pro
На прошлом стриме мы с вами разобрались с разделением кода на модули и микросервисы. Продолжаем стримы на полезные смежные темы. В этот раз поговорим про оптимизацию запуска и работы PHP-приложений. От простого включения OpCache, кеширования конфигурации…
В дни чистовой подготовки стрима про асинхронные серверы пришли идеи с более реальными примерами на AmPHP, ReactPHP и Swoole. Чтобы было красиво и полезно. Потому пока подготовлю новый код, а эфир проведём послезавтра 17-го апреля.

Если хотите присоединиться, но ещё не посмотрели первую часть, то лучше это сделать до начала второй. До встречи с участниками в эфире и в записях!
Deworker Pro
На прошлом стриме мы с вами разобрались с разделением кода на модули и микросервисы. Продолжаем стримы на полезные смежные темы. В этот раз поговорим про оптимизацию запуска и работы PHP-приложений. От простого включения OpCache, кеширования конфигурации…
Напоминаем, что сегодня мы проведём наш стрим про оптимизацию запуска и работы PHP-приложений. Сегодня во второй части поговорим про асинхронные серверы и фреймворки. Про их идеи, достоинства и сложности. До встречи со зрителями в эфире и в записи!
Стрим успешно проведён и тайм-коды к записи частично добавлены. Возвращаемся к программированию.

Перед большим авторефакторингом проекта с помощью инструмента Rector пора перевести API на PHP 8.3 и провести глобальное обновление на долгожданные Doctrine ORM 3 и DBAL 4. Этим сегодня и займёмся.
Тайм-коды ко второй части стрима готовы, уточнения написаны и код везде исправлен. Теперь пересматривать будет удобнее. Что получилось