[Verse 1] When something happens in your app today Don't call directly, there's a better way Send out a message, let the world know Events are flowing, watch your system grow Decoupled services, they don't need to wait Reactive patterns help you scale so great [Chorus] Events are flying, systems replying Asynchronous and free CQRS dividing, commands from querying Event sourcing stores the history Sagas managing workflows long Event-driven makes systems strong [Verse 2] Event sourcing keeps each change you make A stream of facts that never need to break Instead of updating, append what's new Replay the history to get current view Commands say do this, queries ask what's there Separate the reading from the writing care [Chorus] Events are flying, systems replying Asynchronous and free CQRS dividing, commands from querying Event sourcing stores the history Sagas managing workflows long Event-driven makes systems strong [Bridge] When workflows span across domains so wide Sagas coordinate each step with pride Compensating actions when things go wrong Distributed transactions made robust and strong Publishers broadcast, subscribers listen Event-driven architecture makes your future glisten [Verse 3] Eventually consistent, that's the way Not instant but it gets there every day Message brokers help deliver the news Topics and queues give you options to choose Resilient systems that can handle load Event-driven is the modern code [Chorus] Events are flying, systems replying Asynchronous and free CQRS dividing, commands from querying Event sourcing stores the history Sagas managing workflows long Event-driven makes systems strong [Outro] Reactive systems built on events Scalable, flexible, makes perfect sense Remember the pattern, sing it out loud Event-driven architecture makes CTOs proud
← API Design Best Practices | Consistency Models in Distributed Systems →