Microservie architecture essentially removes quite a lot of complexity when it comes to design, development, deployment and inter-service/system communication of the (micro)services.
However, the complexity that's removed from the microservices layer has to be fulfilled by some other component/layer. For example, since MSA does not recommend the use of an ESB as the centralized bus, all tasks done by ESB, such as service orchestration, routing and integrating with disparate systems, should be done by some other components including the microservices themselves.
Read Kasun's blog for more details.
Learn about the role of enterprise middleware in building an MSA by downloading our latest white paper - Scope Versus Size: A Pragmatic Approach to Microservice Architecture .