WHILE DEVELOPING THIS BOOK, we wondered how we would describe web-based distributed systems in an accessible scenario. We weren’t really keen on the idea of yet another e-commerce or trading application. We thought it would have been too boring. We certainly wouldn’t want to read a book like that, so why write one?
Instead, we chose a modest scenario that doesn’t try to steal the focus from the technical discussion or try to become the star of the book. We didn’t want to engage in long explanations about complex problem domains. So, in that spirit, this is the only chapter where we’ll discuss our domain in depth. The other chapters will deal with technical concepts.
The inspiration for our problem domain came from Gregor Hohpe’s brilliant observation on how a Starbucks coffee shop works. In his popular blog entry, Gregor talks about synchronous and asynchronous messaging, transactions, and scaling the message-processing pipeline in an everyday situation.
We liked the approach very much, and as believers that “imitation is the sincerest form of flattery,” we adopted Gregor’s scenario at the heart of this book. We freely admit that our need for good coffee while writing also encouraged us to focus on our own little coffee megastore: Restbucks.
Throughout this book, we’ll frame our problems and web-based solutions in terms of a coffee shop called Restbucks, which grows ...