Голосов: 0
#1
[Валентин Удальцов] MessageBus: от сервисов к обработчикам (2026)
Современные системы базируются на нескольких архитектурных стилях: SOA (service-oriented architecture), MDA (message-driven architecture), EDA (event-driven architecture), CQRS (command and query responsibility segregation).
В этой лекции мы сделаем шаг от простого кода с "сервисами" и "менеджерами" навстречу этим подходам, спроектировав новые абстракции: сообщение, обработчик, шина, контекст.
Мы возьмём простую систему из двух модулей, один из которых напрямую обращается к сервису другого и образует неправильное направление зависимостей, и последовательно отрефакторим её с применением паттернов command, event, middleware.
Всё это мы будем писать на PHP 8.3, вооружившись PHPStan и Deptrac. По дороге обсудим инверсию зависимостей, принципы открытости/закрытости и разделения интерфейсов, иммутабельность, тип callable, вложенные дженерики и трейсинг сообщений.
Продажник:
Скачать:
Современные системы базируются на нескольких архитектурных стилях: SOA (service-oriented architecture), MDA (message-driven architecture), EDA (event-driven architecture), CQRS (command and query responsibility segregation).
В этой лекции мы сделаем шаг от простого кода с "сервисами" и "менеджерами" навстречу этим подходам, спроектировав новые абстракции: сообщение, обработчик, шина, контекст.
Мы возьмём простую систему из двух модулей, один из которых напрямую обращается к сервису другого и образует неправильное направление зависимостей, и последовательно отрефакторим её с применением паттернов command, event, middleware.
Всё это мы будем писать на PHP 8.3, вооружившись PHPStan и Deptrac. По дороге обсудим инверсию зависимостей, принципы открытости/закрытости и разделения интерфейсов, иммутабельность, тип callable, вложенные дженерики и трейсинг сообщений.
Продажник:
Для просмотра содержимого вам необходимо зарегистрироваться!
Скачать:
Симпатии:
Это понравилось arabchik и pooty