To get the free app, enter your mobile phone number.
Exploring CQRS and Event Sourcing: A journey into high scalability, availability, and maintainability with Windows Azure (Microsoft patterns & practices) Paperback – February 9, 2013
|New from||Used from|
All Books, All the Time
Read author interviews, book reviews, editors picks, and more at the Amazon Book Review. Read it now
Frequently bought together
Customers who bought this item also bought
"The "CQRS Journey" guide is an excellent resource for developers who want to begin developing a CQRS system or convert their current system. It's a true "trial by fire" approach to the concepts and implementation hurdles that a team would encounter when adopting CQRS. I would recommend reading it twice as I picked up even more lessons the second time through. -Dan Piessens, Lead Software Architect, Zywave
Perhaps the best lessons out of this guidance will be just how easy it is to work with Microsoft now that they are embracing more community and open source. -Adam Dymitruk, Systems Architect
CQRS is a very important pattern, and a tool that any cloud developer should have in his or her tool-belt. It is particularly well-suited for the cloud since it allows for the implementation of massively scalable solutions based on simple, common patterns (like queues, event handlers, and view models, to name a few). Like all patterns, there are several concrete, correct ways of implementing CQRS. A journey of the type undertaken by Microsoft's patterns & practices team is a great way to explore the different options, tradeoffs, and even possible mistakes one can make along the way, and accelerate one's learning of the CQRS pattern. -Shy Cohen, Principal, Shy Cohen Consulting
CQRS is as much about architecture community as it is about concrete patterns-thus the project is aptly named "CQRS Journey." The community involvement and engagement in this project is unprecedented for Microsoft and reflects the enthusiasm amongst the many (if may say: young) software architects from across the industry who are rediscovering proven architecture patterns and are recomposing them in new ways to solve today's challenges. For me, one takeaway from this project is that the recipes developed here need to be carefully weighed against their alternatives. As with any software architecture approaches that promise easy scalability or evolvability of solutions, the proof will be in concrete, larger production implementations and how they hold up to changing needs over time. Thus, the results of this Journey project mark a start and not a finish line. -Clemens Vasters, Principal Technical Lead, Microsoft Corporation
The experiences and conclusions of the p&p team match up very well with our own real-world experiences. Their conclusions in Chapter 8 are spot on. One of the best aspects of this guidance is that the p&p team exposes more of their thought processes and learning throughout the Journey than most write-ups that you may read. From arguments between Developer 1 and Developer 2 on the team, to discussions with experts such as Greg Young and Udi Dahan, to an excellent post-project review in Chapter 8, the thought process is out there for you to learn from. Thanks for this great work, guys. I hope you keep this style with your upcoming guidance pieces. -Jon Wagner, SVP & Chief Architect, eMoney Advisor
It is a great resource on tactical and technical aspects of building a distributed system. -Rinat Abdullin, Technology Leader, Lokad"
"The CQRS journey release by patterns & practices provides real world insight into the increasingly popular CQRS pattern used in distributed systems that rely upon asynchronous, message based approaches to achieve very large scale. The exploration of the issues the team faced throughout the implementation of the pattern is extremely useful for organizations considering CQRS, both to determine where the pattern is appropriate for them, and to go into the design and implementation with a baseline understanding of the complexity it will introduce. I really enjoyed the candor around the approach taken, the issues encountered, and the early design choices that the team would change in hindsight. This is a must read for any organization embarking upon CQRS, regardless of what platform they are using. - Chris Keyser, VP Engineering, CaseNetwork
This is another excellent guide from the patterns & practices team-real software engineering with no comforting illusions taken or offered. This guide provides a detailed journal of the practitioners implementing a real production system using the CQRS and Event Sourcing patterns, and also highlights the tradeoffs and teaches the principles that underlie them. The topics presented are relevant and useful, especially if you are building highly scalable Windows Azure applications. You'll be both challenged and inspired! -Scott Guthrie, Corporate Vice-President, Azure App Platform, Microsoft
Patterns & practices assembled many of the active and key people in the CQRS community to join them on the their journey with CQRS and along the way discovered confusing terminology and concepts that created opportunities for leaders in the community to bring clarity to a broad audience. The material produced is influenced from the results of building a real world application and expresses the experiences from advisors and the patterns & practices team during the development process. By request from the community to allow outside contributions, everything has been open sourced on GitHub. Anyone interested is encouraged to take a look at the guide or implementation. The patterns & practices team has been very welcoming to anyone who wants to collaborate on covering additional areas, alternative implementations or further extending what is currently in place. -Kelly Sommers, Developer
Having participated and co-authored various guides from patterns & practices, the "CQRS Journey" follows the same walkthrough, scenario-based style, but adding even more fresh empirical content. It's a true testament of a skilled development team without previous CQRS experience, going through the journey of implementing a complex system and documenting their adventures and lessons learnt in this diary. If I had to recommend to someone where to start with CQRS, I would definitely point them to this guide. -Matias Woloski, CTO, Auth10 LLC"
About the Author
Dominic Betts is a principal technologist at Content Master, part of CM Group Ltd, a technical authoring and consulting company. An expert on developing applications with the Microsoft .NET Framework and Windows Azure, Dominic has produced numerous training courses, white papers, and other technical material on .NET, Windows Azure, and Microsoft BizTalk.
Julian Dominguez is a software developer on the Microsoft patterns & practices team, producing written and code-based guidance for .NET developers. He has been a contributor on several projects with this team, including Prism, Enterprise Library, and CQRS Guidance. You can find him on his blog at or on twitter @juliandominguez.
Dr. Grigori Melnik is a Principal Program Manager in the patterns & practices group at Microsoft. He leads the Microsoft Enterprise Library, Unity, Acceptance Testing Guidance, and CQRS Guidance projects. Prior to that, Grigori was a researcher, software engineer, and educator - long enough to remember the joy of programming in Fortran. His areas of expertise include agile methods, empirical software engineering, and software testing. Grigori is a regular contributor to software conferences around the world. He is a member of the IEEE Software Advisory board. Grigori holds a Ph.D. in Computer Science from the University of Calgary, Canada. Contact him at http://blogs.msdn.com/agile or follow him on twitter via @gmelnik.
Fernando Simonazzi is a software developer and architect with over 12 years of professional experience. He has been a contributor to several projects for Microsoft's patterns & practices group, including Prism v4 and several versions of the Enterprise Library.
Mani Subramanian is a software tester on the patterns & practices team. His recent projects include Enterprise Library (Windows Azure, V5), CQRS Journey, Unity, Prism 4.1. Areas he has worked on include core.net, Windows Azure and Windows Phone, BizTalk ESB, performance, security, and test management. He has 12+ years of industry experience. Prior to joining p&p, he was a developer for products that enable network security and worked as a project manager and test consultant.
If you buy a new print edition of this book (or purchased one in the past), you can buy the Kindle edition for only $0.99 (Save 87%). Print edition purchase must be sold by Amazon. Learn more.
For thousands of qualifying books, your past, present, and future print-edition purchases now lets you buy the Kindle edition for $2.99 or less. (Textbooks available for $9.99 or less.)
Top customer reviews
1. Useful free introduction on some relatively new patterns not well documented and understood yet.
2. Going well beyond just CQRS and ES. Deep dive into DDD and the Azure Service Bus, ASP.NET MVC ALM, SpecFlow acceptance tests...
1. Verbose and repetitive. Do not expect a short focused reference. It's rather a continuous brainstorm process, and have to be patient. Too much about business analysis and DDD in this context, not enough depth on CQRS and ES at the end (I worked on large projects using Event Sourcing and snapshots and I was looking for specific answers to complex implementations - not in this book).
2. Not very well structured. If you are new to these cloud patterns, better start with the "references" (second part of the book), where CQRS and ES are actually introduced and explained.