Summary
In this chapter, we covered a lot of core concepts, starting with adding a regular relational database to back our get requests. We enhanced its performance with a local cache and then a distributed cache, Hazelcast. We also looked at a CQRS pattern, replacing our relational databases with a MongoDB for flexible schema and Elasticsearch for flexible search and query capabilities.
We added insert, update, and delete operations to our product service and ensured that the necessary cache invalidation happens in the case of the relational project. We added input validations and proper error messages to our APIs. We covered eventing to ensure that the query model stays up to date with the command model. This is achieved by command model ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access