`
- 浏览:
571660 次
- 性别:
- 来自:
广州
-
适合场景
4.1非均匀应用集成
ActiveMQ中间件用Java语言编写,因此自然提供Java客户端API。但是 ActiveMQ也为C/C++、.NET、Perl、PHP、Python、Ruby喝一些其他语言提供客户端。在你考虑如何集成不同平台不同语言编写 的应用的时候,ActiveMQ拥有巨大优势。在这样的例子中,多种客户端API通过ActiveMQ发送和接受消息成为可能,无论使用的是什么语言。此 外,ActiveMQ还提供交叉语言功能,该功能整合这种功能,无需使用远程过程调用(RPC)确实是个优势,因为消息协助应用解耦。
4.2 作为RPC的替代
应 用使用RPC风格同步调用十分普遍。假设大多数客户端服务器应用使用RPC,包括ATM、大多数WEB应用、信用卡系统、销售点系统等等。尽管很多系统很 成功,转换使用异步消息可以带来很多好处,而且也不会放弃响应保证。系统以来同步需求典型地限制了扩展,因为最终需求将开始起作用,从而放慢整个系统。取 而代之这种不好的体验,使用异步消息,附加的消息接收器可以轻松添加,假设你的应用可以解耦。
4.3 两个应用之间解耦
正 如之前讨论的,紧耦合架构可以导致很多问题,尤其是如果他们是分布的。松耦合架构,在另一方面,真实了更少的依赖性,能够更好地处理不可预见的改变。你不 见可以在系统中改变组件而不影响整个系统,而且组件交互也相当的简单。取代使用同步方案的组件交互,组件利用异步通信。这样的松耦合遍及系统被称之为事件 驱动架构(EDA)。
4.4 作为事件驱动架构的主干
在之前的观点中,解耦、异步风格架构允许软件本身进 一步扩展(水平的可扩展性),而不是依赖硬件的可扩展性(垂直的可扩展性)。想象一下一种难以置信的流量、电子商务网站像亚马逊。但一个用户在亚马逊上购 买,许多分开的阶段贯穿,订单需要履行包括订单配置、创建发票、支付流程、订单完成、运输等。然而,但一个用户实际上失职了一个订单,用户立即得到一个页 面说明,“感谢您的订单。”不仅如此,没有任何延误。用户也收到了订单已经收到的邮件说明。订单配置流程由亚马逊雇佣就是个很好的例子,第一步在一种更大 的、异步流程中。每一个订单步骤直接由分开的服务奋力地处理。但用户下了订单,异步调用提交订单,但是全部订单流程不会落后于通过网页浏览器进行的同步调 用。反之,订单被接受并立即被确认。这个流程中剩余的步骤一步地被处理。如果发生了问题,组织流程进行,用户会被通知。这样的异步流程提供大量的可扩展性。
4.5 改善应用可扩展性
许多应用利用事件驱动架构,为了提供大量的可扩展性,包括像电子商务、政 府、制造业和在线游戏等领域。使用异步消息在业务领域分离一个应用,许多其他可能性开始合并。考虑使用服务为特定任务设计应用的能力。这正是面向服务架构 (SOA)的主干。每一个服务实现一个独立的功能,而且只是那个功能。应用通过这些服务构成来创建,在服务间使用异步消息实现通信。这种风格的应用设计被 称之为复杂事件处理(CEP)。使用CEP,系统中组件之间的交互可以被进一步的分析跟踪。在考虑异步消息在系统的组件之间添加一种迂回的时候,这些可能 性是无止境的。
总结
1、可靠传输,数据不能丢失,有的时候,也会要求不能重复传输;
2、异步传输,否则各个系统同步发送接受数据,互相等待,造成系统瓶颈。
3、一对多通信:对于一个消息可以有多个接收者。
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
基于MQTT 协议的农业物联网消息推送系统,选择最适合物联网的消息协议———MQTT,通过消息中间件,采用发布/订阅机制实现消息推送,实现了农业物联网远程监控。该系统具有数据采集、远程控制、数据分析、设备监管等...
在高并发电商场景下,商品超卖(即销售量超出库存)是常见问题,主要由并发扣减库存导致。常规做法是在扣减库存前检查库存充足性,...总的来说,解决商品超卖问题需要综合运用多种技术和策略,以适应复杂的高并发场景。
本视频《SpringBoot高级》属于下部,着重介绍SpringBoot的与各大场景的整合使用,内容包括:缓存(整合Redis),消息中间件(整合RabbitMQ),检索(整合ElasticSearch),任务(异步任务,定时任务,邮件任务),...
着重介绍SpringBoot的与各大场景的整合使用,内容包括:缓存(整合Redis),消息中间件(整合RabbitMQ),检索(整合ElasticSearch),任务(异步任务,定时任务,邮件任务),安全(整合SpringSecurity),分布式...
基于中间件和服务发布与订阅的体系结构,以及基于Topic和功能域的表达方式,是QISM的重要特点.QISM通过对应用和网络的动态调节,使网络最大限度的支持应用,应用最大程度的适应网络,从而更好地保证了应用的完成,...
本视频《SpringBoot高级》属于下部,着重介绍SpringBoot的与各大场景的整合使用,内容包括:缓存(整合Redis),消息中间件(整合RabbitMQ),检索(整合ElasticSearch),任务(异步任务,定时任务,邮件任务),...
针对认知无线电网络提出了一种基于中间件的分布式动态QoS保证机制DQAM,当网络对应用承诺的QoS保证发生变化,或者应用对网络的QoS要求发生变化时,通过网络和应用之间的反馈和协商,在分析当前网络状态和应用需求的...
友情提醒:依赖了DB redis rocketmq kafka领事,要能正常运行,先把后台中间件搭好。大家各取所需吧,没必要的客户端配置可以删除。 spring boot开发框架目标 适应容器云环境 标准规范:java开发规范,应用集成开发...
自1998年首次发布以来,MySQL以其卓越的性能、可靠性和可扩展性,成为全球范围内Web应用程序、企业级解决方案以及其他各种数据处理场景的首选数据库平台之一。 以下是对MySQL数据库的详细介绍: 核心特性与优势 ...
自1998年首次发布以来,MySQL以其卓越的性能、可靠性和可扩展性,成为全球范围内Web应用程序、企业级解决方案以及其他各种数据处理场景的首选数据库平台之一。 以下是对MySQL数据库的详细介绍: 核心特性与优势 ...
自1998年首次发布以来,MySQL以其卓越的性能、可靠性和可扩展性,成为全球范围内Web应用程序、企业级解决方案以及其他各种数据处理场景的首选数据库平台之一。 以下是对MySQL数据库的详细介绍: 核心特性与优势 ...
自1998年首次发布以来,MySQL以其卓越的性能、可靠性和可扩展性,成为全球范围内Web应用程序、企业级解决方案以及其他各种数据处理场景的首选数据库平台之一。 以下是对MySQL数据库的详细介绍: 核心特性与优势 ...
自1998年首次发布以来,MySQL以其卓越的性能、可靠性和可扩展性,成为全球范围内Web应用程序、企业级解决方案以及其他各种数据处理场景的首选数据库平台之一。 以下是对MySQL数据库的详细介绍: 核心特性与优势 ...
自1998年首次发布以来,MySQL以其卓越的性能、可靠性和可扩展性,成为全球范围内Web应用程序、企业级解决方案以及其他各种数据处理场景的首选数据库平台之一。 以下是对MySQL数据库的详细介绍: 核心特性与优势 ...
自1998年首次发布以来,MySQL以其卓越的性能、可靠性和可扩展性,成为全球范围内Web应用程序、企业级解决方案以及其他各种数据处理场景的首选数据库平台之一。 以下是对MySQL数据库的详细介绍: 核心特性与优势 ...
自1998年首次发布以来,MySQL以其卓越的性能、可靠性和可扩展性,成为全球范围内Web应用程序、企业级解决方案以及其他各种数据处理场景的首选数据库平台之一。 以下是对MySQL数据库的详细介绍: 核心特性与优势 ...
自1998年首次发布以来,MySQL以其卓越的性能、可靠性和可扩展性,成为全球范围内Web应用程序、企业级解决方案以及其他各种数据处理场景的首选数据库平台之一。 以下是对MySQL数据库的详细介绍: 核心特性与优势 ...
自1998年首次发布以来,MySQL以其卓越的性能、可靠性和可扩展性,成为全球范围内Web应用程序、企业级解决方案以及其他各种数据处理场景的首选数据库平台之一。 以下是对MySQL数据库的详细介绍: 核心特性与优势 ...
自1998年首次发布以来,MySQL以其卓越的性能、可靠性和可扩展性,成为全球范围内Web应用程序、企业级解决方案以及其他各种数据处理场景的首选数据库平台之一。 以下是对MySQL数据库的详细介绍: 核心特性与优势 ...
自1998年首次发布以来,MySQL以其卓越的性能、可靠性和可扩展性,成为全球范围内Web应用程序、企业级解决方案以及其他各种数据处理场景的首选数据库平台之一。 以下是对MySQL数据库的详细介绍: 核心特性与优势 ...