Domain Model and Asynchronous Events
When you're deciding on a communication pattern for an application, it is normal to look at the circumstances under which components may communicate with one another. Typical web applications follow a request/response pattern, where a request is made to the server and a response is returned to the client and handled appropriately. For applications looking to handle high throughput in those communication channels, a standard request/response pattern is not desired as each request would expect and wait for a response, leading to latency for requests that have been submitted while one is still processing. With hundreds of thousands of messages being sent per second, the application would be slowed to a halt as every request is met with a corresponding response. Scenarios such as this call for a more resilient and asynchronous messaging pattern.
This chapter intends to dive deeper into the domain model for the sample application. To do so,...