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

Message-driven

In reactive applications, one of the main aspects is the usage of asynchronous messages to pass data from one component to another. This brings loose coupling between components and aids in achieving location transparency (as long as the component is reachable/discoverable, it can reside in a single node or a cluster of nodes anywhere). Create a message, publish, and forget. Registered subscribers receive the message, process it, and broadcast the message for the other subscribes to do their jobs. This is one of the core aspects of reactive programming and it is one of the fundamental aspects needed for a reactive system. This fire-and-forget concept brings in a non-blocking way of communication, resulting in highly scalable applications.

The following diagram (Figure 1) clearly shows the Reactive Manifesto in a pictorial fashion. It also clearly shows the relationship between the main concepts on the Reactive Manifesto:

Figure 1: Reactive Manifesto

Since reactive applications are responsive, resilient, elastic, and message-driven, these applications are inherently highly flexible, highly scalable, loosely coupled, and fault-tolerant.

Mateusz Gajewski, in one of his presentations shared on www.slideshare.net, sums up the Reactive Manifesto in a very nice way:

Figure 2: Reactive Manifesto as conceived by Mateusz Gajewski

主站蜘蛛池模板: 阳谷县| 东阿县| 永定县| 雷山县| 吉林省| 元江| 浪卡子县| 镇宁| 汶上县| 五莲县| 南城县| 新沂市| 永新县| 西平县| 凤山市| 华安县| 穆棱市| 望奎县| 罗平县| 天津市| 昌邑市| 尼勒克县| 沅陵县| 资阳市| 马关县| 保山市| 焉耆| 阿荣旗| 湖南省| 铜鼓县| 台前县| 彰化市| 庄河市| 绥宁县| 黔西县| 宾阳县| 博爱县| 林周县| 上犹县| 莱州市| 类乌齐县|