รูปแบบสถาปัตยกรรม CQRS/ES (Command Query Responsibility Segregation/Event Sourcing) คืออะไร

CQRS/ES เป็นรูปแบบสถาปัตยกรรมที่แยกความรับผิดชอบของการอ่านข้อมูล (แบบสอบถาม) จากการเขียนข้อมูล (คำสั่ง) และใช้วิธีการจัดหาเหตุการณ์เพื่อจัดเก็บการเปลี่ยนแปลงทั้งหมดในระบบเป็นลำดับของเหตุการณ์โดเมน

ใน CQRS คำสั่งจะรับผิดชอบในการเปลี่ยนสถานะของระบบ ในขณะที่การสืบค้นมีหน้าที่ในการอ่านข้อมูลจากระบบ การแยกนี้ช่วยให้สามารถปรับขยายได้ดีขึ้น เนื่องจากการดำเนินการอ่านและเขียนสามารถปรับให้เหมาะสมแตกต่างกัน รูปแบบสนับสนุนการใช้แบบจำลองที่แตกต่างกันสำหรับการดำเนินการอ่านและเขียน เนื่องจากมีข้อกำหนดที่แตกต่างกัน

ในทางกลับกัน การจัดหาเหตุการณ์เป็นวิธีการจัดเก็บข้อมูลที่การเปลี่ยนแปลงทั้งหมดในระบบจะถูกจัดเก็บเป็นลำดับของเหตุการณ์ในบันทึกต่อท้ายเท่านั้น ซึ่งช่วยให้สามารถสร้างสถานะของระบบขึ้นใหม่ได้ทุกเมื่อโดยเล่นซ้ำลำดับเหตุการณ์ที่นำไปสู่สถานะปัจจุบัน การจัดหาเหตุการณ์ยังช่วยให้สามารถตรวจสอบและเข้าใจลักษณะการทำงานของระบบได้ดียิ่งขึ้นเมื่อเวลาผ่านไป

การผสมผสานระหว่าง CQRS และการจัดหาเหตุการณ์ช่วยให้ระบบมีความยืดหยุ่น ปรับขนาดได้ และบำรุงรักษาได้ ซึ่งสามารถจัดการกับตรรกะทางธุรกิจที่ซับซ้อนและข้อกำหนดที่เปลี่ยนแปลงได้ โดยทั่วไปจะใช้ในระบบที่ต้องการความพร้อมใช้งานสูง ความสามารถในการปรับขนาด และการตรวจสอบได้ เช่น ระบบการเงินหรือแพลตฟอร์มอีคอมเมิร์ซ

วันที่เผยแพร่: