Introducing Microservices
摘要
The complexity of enterprise software systems increases with increased functionalities and features supported. As discussed in Chapter 1 , modern enterprise systems must seamlessly exchange information with multiple internal and external systems. Traditionally, we have built software systems as a “modular monolith.” By modular, we mean that they follow the principles of modules, layers, and tiers; hence, there is a logical modularity for elements within the software system. By monolith, we mean that the entire system is built with a specific scenario of deployment and operation in mind; most of the time, they are deployed as a single unit, or at most, they are distributed following the three-tier or n-tier architecture you saw in Chapter 1 . But there ends the flexibility of deployment. Equally important is the process of building such a system in a multiteam or a distributed team organization.