In this type of application style, an application is decomposed into a set of micro-services and each service interacts with the other by publishing its results to a common event-bus that delivers the event to the next in the queue.
These kinds of applications are suited to use cases such as Extract-Transform-Load or fetch-process-store. Let's look at an example to understand where such an application styles fits and how it works.
Imagine you own a huge supermarket that contains a variety of food items, both perishable and non-perishable. In order to keep the items fresh, they have to be kept at a constant temperature. For example, a frozen pizza should be maintained at a temperature below zero degrees, ...