[{"data":1,"prerenderedAt":68},["ShallowReactive",2],{"term-e\u002Fevent-sourcing":3,"related-e\u002Fevent-sourcing":57},{"id":4,"title":5,"acronym":6,"body":7,"category":39,"description":40,"difficulty":41,"extension":42,"letter":43,"meta":44,"navigation":45,"path":46,"related":47,"seo":51,"sitemap":52,"stem":55,"subcategory":6,"__hash__":56},"terms\u002Fterms\u002Fe\u002Fevent-sourcing.md","Event Sourcing",null,{"type":8,"value":9,"toc":32},"minimark",[10,15,19,23,26,30],[11,12,14],"h2",{"id":13},"eli5-the-vibe-check","ELI5 — The Vibe Check",[16,17,18],"p",{},"Instead of storing 'balance: $100', event sourcing stores 'deposited $200, withdrew $50, withdrew $50'. The current state is derived by replaying events from the beginning. It is like git for your data — full history, replay to any point in time, and derive projections. The downside: complexity that will humble you.",[11,20,22],{"id":21},"real-talk","Real Talk",[16,24,25],{},"undefined",[11,27,29],{"id":28},"when-youll-hear-this","When You'll Hear This",[16,31,25],{},{"title":33,"searchDepth":34,"depth":34,"links":35},"",2,[36,37,38],{"id":13,"depth":34,"text":14},{"id":21,"depth":34,"text":22},{"id":28,"depth":34,"text":29},"architecture","Instead of storing 'balance: $100', event sourcing stores 'deposited $200, withdrew $50, withdrew $50'.","advanced","md","e",{},true,"\u002Fterms\u002Fe\u002Fevent-sourcing",[48,49,50],"CQRS","Command Pattern","Observer Pattern",{"title":5,"description":40},{"changefreq":53,"priority":54},"weekly",0.7,"terms\u002Fe\u002Fevent-sourcing","Ba1Nt5JkVPzSueWzAuKn7rR3_usN_1x1IG7I9cuAPbE",[58,62,65],{"title":49,"path":59,"acronym":6,"category":39,"difficulty":60,"description":61},"\u002Fterms\u002Fc\u002Fcommand-pattern","intermediate","Every action in a text editor is a Command object: TypeTextCommand, DeleteWordCommand, BoldCommand.",{"title":48,"path":63,"acronym":6,"category":39,"difficulty":41,"description":64},"\u002Fterms\u002Fc\u002Fcqrs","CQRS says: the way you write data and the way you read data should be separate systems. Writing (commands) goes to one model optimized for transactions.",{"title":50,"path":66,"acronym":6,"category":39,"difficulty":60,"description":67},"\u002Fterms\u002Fo\u002Fobserver-pattern","Think of a newsletter. You (the publisher\u002Fsubject) publish content. Your subscribers (observers) automatically get notified when new content arrives.",1776518277963]