- Mastering Spring Boot 2.0
- Dinesh Rajput
- 418字
- 2021-06-25 21:29:22
Microservices architecture
Microservices is not a new word, the term was coined in 2005 by Dr Peter Rodgers. It was first called micro web services and based on SOAP. The term microservice is meant to convert large software into a number of pieces. Each piece focuses on a particular point of business. It is just like a little service with a microscopic scope for a specific target, compared to existing monolithic applications where the scope is very broad.
So, it pides the monolithic application into smaller microservices and manages and deploys these services as a single business goal; communication across these distributed services is a difficult task for developers. Use Spring Cloud to simplify integration between these distributed services.
Nowadays, industries are working on new functionality implementations and innovations every day or every week, constantly growing the application to a large size. A lot of complexity and coupling between various systems makes it difficult to change anything in the application. So various modules' teams must take care regarding impact on various parts of the application, either for large changes or the tiniest changes.
Let's look at the following diagram of a monolithic application without the microservices architecture:

As you can see, the preceding diagram shows, the Banking Application using a monolithic architecture without microservices. It's an all-in-one application, which means all modules, such as AccountService, CustomerService, and Notification Service, are in a single application.
Suppose you change CustomerService, you have to ensure the functionality of other modules' notification and account services is not impacted by the style of the architecture.
Let's pide this monolithic application into separate pieces according to the modules, and create with the microservice architecture. See the following diagram:

As you can see, we've now created the Banking Application with the microservices-based architecture. Here, the main application has been pided in a set of sub-applications, called microservices.
As core Spring concepts are applied to application architecture, Spring enables a separation of concerns between the application components, such as loose coupling, which means the effect of the change is isolated, and tight cohesion, which means the code performs a single, well-defined task. Similarly, microservices exhibit the same strengths, that is, loose coupling between the collaborating services of the application, and you can change these services independently. Another strength is tight cohesion, which means an application service that deals with a single view of data; it also known as Bounded Contexts or Domain-driven design (DDD).
Let's look at the following benefits of the microservice architecture.
- 金蝶ERP-K/3培訓教程:財務/供應鏈/生產制造(第2版)
- 跟李銳學Excel數據分析
- 非常Easy:Office高效辦公
- Excel辦公高手應用技巧
- PPT多媒體課件制作從新手到高手
- 巧學巧用Excel:迅速提升職場效率的關鍵技能
- 新編Excel公式、函數與圖表應用大全(2016實戰精華版)
- 征服Power BI:提升辦公數字化能力的45個實戰技巧
- Excel人力資源應用之道
- Word Excel PPT 2013:辦公應用從入門到精通
- Access VBA活用范例手冊
- 新編PowerPoint 2016從入門到精通
- 精英演示:PPT的商務演示藝術
- Office 2016 for Mac蘋果電腦辦公應用從入門到精通
- Excel 2016會計與財務管理從入門到精通