`
- 浏览:
576014 次
- 性别:
- 来自:
广州
-
适合场景
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
相关推荐
消息中间件是一种在不同应用或系统之间传递消息的软件,它位于操作系统和应用软件之间,为应用软件提供运行环境和服务。...随着技术的不断进步,消息中间件也在不断演进,以适应更加复杂多变的系统需求。
分布式消息中间件是现代软件架构中的重要组成部分,特别是在微服务和大数据处理场景中,它们扮演着数据通信的关键角色。本书《分布式消息中间件实践_倪炜(著)》深入探讨了四种主流的消息队列(Message Queue,MQ)...
9. **未来趋势**:可能还会探讨消息中间件的未来发展趋势,如云原生、微服务架构下的消息中间件设计,以及如何适应快速变化的业务需求。 通过阅读这篇硕士论文,读者可以对消息中间件有深入的理解,包括其理论基础...
在多场景下,分布式消息中间件需要能够适应不同的业务场景,例如高并发、高可用、低延迟等。 二、Corgi架构演进 Corgi是蘑菇街分布式消息中间件的架构演进版本。Corgi 1.x版本采用master/slave架构,具有高可用和...
消息中间件也需要适应这一趋势,提供更加灵活、可扩展的解决方案,以满足不同用户和应用场景的需求。 总的来说,消息中间件在数据交换中的作用不可忽视,它促进了不同系统间的协同工作,推动了商业和社会的信息化...
在实际应用中,这些模式可以帮助我们应对不同场景的需求,例如,简单模式适合一对一的任务处理,发布/订阅模式用于广播消息,而死信队列则可以处理异常消息,保证系统的健壮性。 集成RabbitMQ与Spring家族是另一个...
6. **多样性**: 针对不同应用场景,提供了多种消息中间件选择,如RocketMQ适合业务消息处理,Kafka专注大数据生态,MNS则服务于云产品生态集成和消息通知,而MQTT和AMQP则分别满足物联网和多协议需求。 7. **拥抱...
借助容器化和Kubernetes,云原生消息服务能快速适应业务变化,实现无缝扩展和缩容。 3. 自动化运维 通过自动化监控、报警和故障恢复机制,云原生消息服务降低了运维复杂度,提高了系统的可用性。 4. 安全性和合规...
在云原生时代,消息中间件的架构设计已经成为IT领域中的关键议题,它涉及如何构建高效、可扩展、高可用的消息传递系统,以适应快速变化的业务需求和云计算环境。以下将详细介绍云原生消息中间件的核心概念、演进方向...
- **多种协议支持**:支持多种消息协议,适应不同应用场景。 3. **ActiveMQ 的核心组件有哪些?** 主要包括 Broker(消息代理)、Producer(生产者)、Consumer(消费者)、Destination(目的地,可以是队列或...
中创中间件可能涵盖了这些类别中的一个或多个,以满足不同业务场景的需求。例如,消息中间件允许异步处理,提高系统的响应速度和可扩展性;交易中间件则专注于处理复杂的事务处理,确保数据的一致性和完整性。 国产...
RabbitMQ的多协议支持和集群功能使其适应多种场景,但它的服务负载均衡需要额外的组件支持。 在进行选型时,企业应根据自身业务需求、现有技术栈和未来发展规划来权衡这些特性。例如,如果业务对实时数据处理有高...
【消息中间件和JMS原理】是分布式系统中重要的组件,它们主要解决了传统RPC(Remote Procedure Call)中间件存在的性能、健壮性和可扩展性的不足。RPC中间件如CORBA、DCOM、RMI,虽然方便了跨网络的函数调用,但其...
相比之下,confirm模式更受欢迎,它通过为每个消息分配一个唯一的ID,并在消息被正确处理后向生产者发送确认消息,以此来保证消息的可靠性。 综上所述,消息队列作为一种重要的中间件技术,在现代软件架构中扮演着...
【多态功能】意味着消息中间件不仅需要支持点对点通信,还需要支持点对多点和发布/订阅模式,以适应不同场景下的通信需求。发布/订阅模式尤其适合调度自动化系统,因为它实现了通信双方在时间、空间和数据上的多维度...
《基于ActiveMQ的消息中间件架构设计》 在现代企业信息化建设中,消息中间件作为解决分布式系统间通信问题的...同时,通过合理的消息流转策略,适应了各种业务场景的需求,使得跨中心、异步和同步通信得以有效实施。
### TIBCO Rendezvous (TIBCO RV) 与 IBM MQ 及 JMS 消息中间件的对比分析 #### TIBCO Rendezvous 技术简介 TIBCO Rendezvous(简称TIBCO RV)是一款强大的中间件产品,它通过一系列专有的技术,实现了异构系统...
随着分布式系统规模的不断扩大,单个消息中间件的服务能力逐渐难以满足需求,因此引入集群技术成为了提高消息中间件性能和服务质量的有效手段之一。本文将详细探讨在消息中间件中采用集群技术的方法,分析其实施过程...
消息中间件在TCP/IP网络体系结构中处于应用层位置,是建立在各种网络应用程序之下的软件。在客户端—服务器—物联网设备终端的通信框架中,HTTP协议主要用于客户端和服务器之间的通信,而服务器与物联网设备终端之间...