The microservice approach
If we were to build the same application using microservices, we would organize the code into several separate components that run in separate processes. We have already discussed the PDF report generator, and we can examine the rest of the application and see where we could split it into different microservices, as shown in the following diagram:
Figure 1.2: A sample microservice architecture
Don't be afraid of the number of components displayed in this diagram. The internal interactions of the monolithic application are just being made visible by separate pieces. We've shifted some of the complexity and ended up with these seven standalone components:
- Booking UI: A frontend service that generates the web user interface, and interacts with all the other microservices.
- PDF reports: A very simple service that will create PDFs for receipts or any other document given a template and some data. Also known as the PDF...