Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Employing CQRS and Event Sourcing to Build an M...

Employing CQRS and Event Sourcing to Build an MVP (Sunshine PHP 2017)

Learning about Command Query Responsibility Segregation (CQRS) and Event Sourcing can be both exciting and confusing. It sounds great, but how does it work in the real world? Won't it be a lot of work before you even get started? Will it be worth the investment and when will that investment start paying off? Are these technologies appropriate for building a minimum viable product (MVP)? Find out how these questions were answered for one team as they set out to build their MVP.

Beau Simensen

February 04, 2017
Tweet

More Decks by Beau Simensen

Other Decks in Programming

Transcript

  1. Employing CQRS and Event Sourcing to Build an MVP Beau

    Simensen • @beausimensen • beau.io joind.in/talk/f87ac
  2. Me

  3. Similar functionality could have been built in ONE MONTH if

    we had used Laravel & plain ol' HTML templates
  4. Was it the fault of the stack? — me, every

    day for the next few months
  5. If the plan was to just build a CRM I

    wouldn't have gotten involved.
  6. Command -> Command Bus -> Command Handler -> Model ->

    Events -> Event Store -> Event Bus -> Projector -> Read Model!
  7. Event Sourcing makes sense if the Model is known and

    stable How often is that the case for an MVP?
  8. CQRS makes sense if Read Model is not known /

    flexible Good fit for an MVP!