Tracking a single order that's being placed is easy. However, multiply that number with the million orders that are being placed and canceled every hour; it could quickly become a challenge in the reactive microservices domain. The challenge is how you would perform a transaction across multiple services. Not only is it difficult to track such a transaction, but it poses other challenges, such as persisting a transaction that spans the database and message broker. For example, a user ordered a single item, added it to the cart, and checks out for payment.
In this activity, our code flow would be as follows:
- The system checks the availability of the ordered item.
- The system reserves the item, if it's available.
- On checkout, the system will adjust the inventory for the item.
- Finally, on payment, there will be a confirmation of the order, and the system&...