- Spring 5.0 Microservices(Second Edition)
- Rajesh R V
- 287字
- 2021-07-02 19:44:53
Enables to build organic systems
Microservices help us build systems that are organic in nature. This is significantly important when migrating monolithic systems gradually to microservices.
Organic systems are systems that grow laterally over a period of time by adding more and more functions to it. In practice, applications grow unimaginably large in its lifespan, and, in most cases, the manageability of the application reduces dramatically over that same period of time.
Microservices are all about independently manageable services. This enables us to keep adding more and more services as the need arises, with minimal impact on the existing services. Building such systems do not need huge capital investment. Hence, businesses can keep building as part of their operational expenditure.
A loyalty system in an airline was built years ago, targeting individual passengers. Everything was fine until the airline started offering loyalty benefits to their corporate customers. Corporate customers are individuals grouped under corporations. Since the current system's core data model is flat, targeting individuals, the corporate requirement needs a fundamental change in the core data model, and hence, a huge rework to incorporate this requirement.
As shown in the following diagram, in a microservices-based architecture, customer information would be managed by the Customer microservices, and loyalty by the Loyalty microservice:

In this situation, it is easy to add a new Corporate Customer microservice to manage corporate customers. When a corporation is registered, individual members will be pushed to the Customer microservices to manage them as usual. The Corporate Customer microservice provides a corporate view by aggregating data from the Customer microservice. It will also provide services to support corporate-specific business rules. With this approach, adding new services will have only a minimal impact on existing services.
- 少兒人工智能趣味入門:Scratch 3.0動畫與游戲編程
- Microsoft Dynamics 365 Extensions Cookbook
- C語言程序設計
- Python零基礎快樂學習之旅(K12實戰訓練)
- Python自然語言處理(微課版)
- Java EE 7 Performance Tuning and Optimization
- Mastering Drupal 8 Views
- Android開發案例教程與項目實戰(在線實驗+在線自測)
- C# 8.0核心技術指南(原書第8版)
- 運用后端技術處理業務邏輯(藍橋杯軟件大賽培訓教材-Java方向)
- Java編程的邏輯
- 西門子S7-200 SMART PLC編程從入門到實踐
- Android項目實戰:手機安全衛士開發案例解析
- Mastering Akka
- Java Fundamentals