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

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.

主站蜘蛛池模板: 顺平县| 东安县| 博罗县| 福鼎市| 峨边| 万安县| 井研县| 高邮市| 炎陵县| 甘谷县| 延津县| 尚义县| 潜江市| 曲水县| 图片| 南平市| 瓦房店市| 神农架林区| 靖远县| 怀来县| 庄河市| 海兴县| 彰化县| 九寨沟县| 桃源县| 浑源县| 临高县| 沂水县| 繁峙县| 调兵山市| 交城县| 揭西县| 马尔康县| 龙海市| 陈巴尔虎旗| 法库县| 彭泽县| 维西| 丁青县| 承德市| 东方市|