Building blocks of a microservice architecture

Running a microservice architecture requires a lot of components/features and involves a lot of advanced concepts. For the sake of understanding these concepts, imagine we have a microservice-based application for our e-commerce shopping website. This includes the following services:

Some of the concepts we will see in this section are: