- Producers (Продюсеры): Сервисы, в которых произошло событие (например, Checkout API зафиксировал оплату).
- Brokers (Брокеры): Инфраструктурный слой для передачи и хранения событий (Kafka, RabbitMQ, NATS).
- Consumers (Консьюмеры): Сервисы, которые подписываются на события и выполняют свою бизнес-логику.
Хореография (Choreography) — это базовый способ взаимодействия в событийной архитектуре. Здесь нет центрального мозга. Продюсер просто кидает событие в брокер, а консьюмеры сами решают, интересно оно им или нет. Это обеспечивает максимальную слабую связность (Loose Coupling): сервисы могут ничего не знать друг о друге.
О более сложном подходе — Оркестрации (паттерн Mediator), где появляется управляющий всего процесса, мы подробно поговорим в конце модуля.