คืออะไร สถาปัตยกรรมที่ขับเคลื่อนด้วยเหตุการณ์
สถาปัตยกรรมที่อิงเหตุการณ์
สถาปัตยกรรมที่ขับเคลื่อนด้วยเหตุการณ์ (EDA) เป็นรูปแบบสถาปัตยกรรมที่ส่วนประกอบของระบบโต้ตอบผ่านการสร้างและประมวลผลเหตุการณ์ ให้การเชื่อมต่อแบบหลวมและความสามารถในการปรับขนาดสูง
ส่วนประกอบหลัก
- ผู้ผลิตเหตุการณ์ — สร้างเหตุการณ์เมื่อสถานะเปลี่ยน
- ตัวกลางข้อความ — กำหนดเส้นทางเหตุการณ์ (Kafka, RabbitMQ)
- ผู้บริโภคเหตุการณ์ — ประมวลผลและตอบสนองต่อเหตุการณ์
- Event Store — จัดเก็บประวัติเหตุการณ์
รูปแบบ EDA
- Pub/Sub — เผยแพร่-สมัครสมาชิกเหตุการณ์
- Event Sourcing — จัดเก็บสถานะเป็นลำดับเหตุการณ์
- CQRS — แยกความรับผิดชอบคำสั่งและการสืบค้น
- Saga — ธุรกรรมแบบกระจาย
ข้อดี
- การเชื่อมต่อแบบหลวมของบริการ
- การปรับขนาดแนวนอน
- ทนต่อความผิดพลาด
- การประมวลผลแบบอะซิงโครนัส