官术网_书友最值得收藏!

Supporting building self-organizing systems

Microservices help us build self-organizing systems. A self-organizing system supporting automated deployment will be resilient and exhibits self-healing and self-learning capabilities.

In a well-architected microservice system, services are unaware of other services. It accepts a message from a selected queue and processes the message. At the end of the process, it may send out another message that triggers other services. This allows us to drop any service into the ecosystem without analyzing the impact on the overall system. Based on the input and output, the service will self-organize into the ecosystem. No additional code changes or service orchestration is required. There is no central brain to control and coordinate the processes.

Imagine an existing notification service that listens to an INPUT queue and sends notifications to a Simple Mail Transfer Protocol (SMTP) server as follows:

If later, a personalization engine needs to be introduced to personalize messages before sending it to the customer, the personalization engine is responsible for changing the language of the message to the customer's native language.

The updated service linkage is shown as follows:

With microservices, a new personalization service will be created to do this job. The input queue will be configured as INPUT in an external configuration server. The personalization service will pick up the messages from the INPUT queue (earlier, this was used by the notification service), and send the messages to the OUTPUT queue after completing the process. The notification service's input queue will then send to OUTPUT. From the very next moment onward, the system automatically adopts this new message flow.

主站蜘蛛池模板: 常州市| 朝阳区| 石门县| 东丰县| 榆林市| 沐川县| 开封县| 蕲春县| 杭锦旗| 隆林| 东安县| 准格尔旗| 娱乐| 玉溪市| 连山| 汶川县| 宜兴市| 凯里市| 大兴区| 黄冈市| 交口县| 翁源县| 镇远县| 铜川市| 叙永县| 阿坝| 介休市| 扬中市| 昌邑市| 虎林市| 浮梁县| 湖州市| 咸宁市| 商都县| 清涧县| 保靖县| 汤阴县| 固镇县| 庆安县| 四平市| 察隅县|