cqrs at dba
play

CQRS AT DBA Morten Jokumsen eBay classifieds Morten Jokumsen - PowerPoint PPT Presentation

CQRS AT DBA Morten Jokumsen eBay classifieds Morten Jokumsen Software Architect @ eBay Classifieds Email: mjokumsen@ebay.com Skype: guidmaster Twitter: guidmaster The company Part of eBay Classifieds Bilbasen DBA


  1. CQRS AT DBA Morten Jokumsen eBay classifieds

  2. • Morten Jokumsen • Software Architect @ eBay Classifieds • Email: mjokumsen@ebay.com • Skype: guidmaster • Twitter: guidmaster

  3. The company • Part of eBay Classifieds • Bilbasen • DBA • Bilinfo • All leaders in their respective markets

  4. What is DBA • Started as a printed paper • By fare the largest classifieds site in DK

  5. How DBA looked like before • An old legacy platform

  6. On big monolithic platform

  7. Where we what to be? • Domain Driven Development • Build scalable solutions • Be able to innovate our business

  8. What is CQRS? “ CQRS is simply the creation of two objects where there was previously only one. The separation occurs based upon whether the methods are a command or a query (the same definition that is used by Meyer in Command and Query Separation: a command is any method that mutates state and a query is any method that returns a value). ” - Greg Young

  9. … and when to use it • Scalability matters • Large team • Difficult business logic

  10. Why did we choose CQRS? • We need to scale our application • We need to integrate with other services • We have limited developer resources • We need to innovate • We wanted small manageable solutions

  11. How we started

  12. The results • Initial benefits • Scaling developer productivity • Scaling our read-side • ….. and the first problems

  13. But we saw the potential

  14. SYI • This is where we make revenue • This is where we can innovate • This is where our real business is

  15. The good • Introducing Event Sourcing • Introducing Sagas or Process Managers • Async events • Debugging live problems

  16. The bad • Introducing Event Sourcing • Async events

  17. Notes from a developer • The good • SRP • Addition instead of modification • The bad • Mental shift • Easy to fall back to just doing crud

  18. And the problems we faced • Upgrading events • Inconsistency between read-models and ES • Operations – Date retention

  19. Key points • CQRS is not complicated • Smaller is better • Take the principals and apply elsewhere • Remember the mental changes

  20. Backup

  21. Integration with Events

  22. Method Chaining

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend