Event Sourcing là gì
Lưu trữ trạng thái qua lịch sử sự kiện
Event Sourcing là một mẫu kiến trúc trong đó trạng thái ứng dụng được xác định bởi chuỗi sự kiện thay vì ảnh chụp dữ liệu hiện tại.
Cách Hoạt Động
- Sự kiện (Event) — bản ghi bất biến về những gì đã xảy ra
- Event Store — lưu trữ tất cả sự kiện theo thứ tự thời gian
- Projection — trạng thái hiện tại được tái tạo từ các sự kiện
- Replay — khả năng phát lại tất cả sự kiện
Lợi ích
- Lịch sử thay đổi đầy đủ (audit trail)
- Khả năng quay lại bất kỳ thời điểm nào
- Gỡ lỗi và phân tích hành vi hệ thống
- Hỗ trợ CQRS (Command Query Responsibility Segregation)
Trường Hợp Sử Dụng
- Giao dịch ngân hàng và hệ thống thanh toán
- Hệ thống đặt chỗ và đơn hàng
- Server game (replay trận đấu)
- Kiểm toán và tuân thủ trong ứng dụng tài chính
Công Nghệ
Event Store, Apache Kafka, Axon Framework, Marten (.NET).