Event Sourcing رویکردی است که در آن تغییرات وضعیت به شکل دنباله‌ای از رویدادهای ثبت‌شده نگهداری می‌شوند. وضعیت فعلی می‌تواند از اجرای دوباره رویدادها یا از Snapshotهای حاصل بازسازی شود.

در پروژه چه کاربردی دارد؟

به‌جای ذخیره صرفاً «موجودی فعلی ۵»، ممکن است رویدادهای افزودن و برداشت موجودی ثبت شوند. این کار تاریخچه تغییر را فراهم می‌کند.

Event Sourcing با Event-Driven Architecture یا CQRS یکسان نیست. نسخه‌بندی رویدادها، اجرای دوباره و نگهداری داده شخصی از چالش‌ها هستند.

رویداد تاریخی را حذف نکنید

در ایونت سورسینگ، وضعیت فعلی از دنباله تغییرهای ثبت‌شده به دست می‌آید. هنگام اصلاح سفارش قبلی معمولاً رویداد جدید ثبت می‌شود، نه اینکه سابقه پرداخت قبلی بی‌سر و صدا بازنویسی شود.