Что такое Event-Driven Architecture
Архитектура на основе событий
Event-Driven Architecture (EDA) — это архитектурный паттерн, при котором компоненты системы взаимодействуют через генерацию и обработку событий, обеспечивая слабую связанность и высокую масштабируемость.
Ключевые компоненты
- Продюсеры событий — генерируют события при изменении состояния
- Брокер сообщений — маршрутизирует события (Kafka, RabbitMQ)
- Потребители событий — обрабатывают и реагируют на события
- Event Store — хранение истории событий
Паттерны EDA
- Pub/Sub — публикация-подписка на события
- Event Sourcing — хранение состояния как последовательности событий
- CQRS — разделение чтения и записи
- Saga — распределённые транзакции
Преимущества
- Слабая связанность сервисов
- Горизонтальное масштабирование
- Отказоустойчивость
- Асинхронная обработка