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

Supporting event-driven architecture

Microservices enable us to develop transparent software systems. Traditional systems communicate with each other through native protocols and hence behave like a black-box application. Business events and system events, unless published explicitly, are hard to understand and analyze. Modern applications require data for business analysis, to understand dynamic system behaviors, and analyze market trends, and they also need to respond to real-time events. Events are useful mechanisms for data extraction.

A well-architected microservice always works with events for both input and output. These events can be tapped by any services. Once extracted, events can be used for a variety of use cases.

For example, businesses want to see the velocity of orders categorized by the product type in real-time. In a monolithic system, we will need to think about how to extract these events, which may impose changes in the system.

The following diagram shows the addition of New Event Aggregation Service without impacting existing services:

In the microservices world, Order Event is already published whenever an order is created. This means that it is just a matter of adding a new service to subscribe to the same topic, extract the event, perform the requested aggregations, and push another event for the dashboard to consume.

主站蜘蛛池模板: 嘉荫县| 宜州市| 阿勒泰市| 林州市| 梨树县| 永城市| 土默特左旗| 丽水市| 固阳县| 凤台县| 白银市| 海淀区| 康平县| 习水县| 太仓市| 项城市| 囊谦县| 蒙阴县| 伊宁市| 虞城县| 金华市| 永州市| 海南省| 平塘县| 左云县| 广宗县| 延吉市| 张家川| 钦州市| 潼关县| 兴隆县| 清远市| 秦皇岛市| 图们市| 柯坪县| 沂水县| 安泽县| 吉木乃县| 油尖旺区| 枣阳市| 沂南县|