Konsep Dasar EDA
Event-Driven Architecture (EDA) adalah paradigma di mana komponen sistem berkomunikasi melalui events – pesan yang merepresentasikan fakta yang telah terjadi. Producer menghasilkan event, consumer memprosesnya secara asinkron.
Komponen Utama EDA
- Event Producer – komponen yang menghasilkan event
- Event Broker – middleware yang menyalurkan event (Kafka, RabbitMQ)
- Event Consumer – komponen yang bereaksi terhadap event
- Event Store – penyimpanan log event
Keunggulan EDA
Loose coupling antara service, skalabilitas tinggi, resiliensi terhadap kegagalan parsial, dan kemampuan untuk audit trail penuh melalui event log.
Tantangan EDA
Eventual consistency bisa sulit dipahami dan di-debug. Urutan event perlu dikelola dengan hati-hati, dan idempotency consumer harus dijamin.
Kesimpulan
EDA adalah fondasi arsitektur sistem terdistribusi modern yang mampu menangani throughput tinggi dengan ketahanan yang luar biasa.