【转,非原创】
activeMQ5.9.版本带的例子提供了5种协议的简单demo,这5种协议分别为:AMQP,MQTT,OpenWire,Stomp,ws通过运行这5种协议的的demo可以大致得出这5种协议实现在activeMQ中的性能对比:
1
2
3
4
5
6
7
8
9
10
11
|
amqp Received 10001 in 6.58 seconds
mqtt Received 10000 in 2.69 seconds
openwire Received 10001 in 8.87 seconds
stomp Received 10001 in 14.17 seconds
|
可以看出,mqtt协议的实现最快,stomp的协议实现最慢。
ws没有测试,这个应该是更慢。
附这5种协议的简单介绍:
AMQP协议:
即Advanced Message Queuing Protocol,一个提供统一消息服务的应用层标准高级消息队列协议,是应用层协议的一个开放标准,为面向消息的中间件设计。基于此协议的客户端与消息中间件可传递消息,并不受客户端/中间件不同产品,不同开发语言等条件的限制。
MQTT协议:
MQTT(Message Queuing Telemetry Transport,消息队列遥测传输)是IBM开发的一个即时通讯协议,有可能成为物联网的重要组成部分。该协议支持所有平台,几乎可以把所有联网物品和外部连接起来,被用来当做传感器和致动器(比如通过Twitter让房屋联网)的通信协议。
OpenWire协议:OpenWire协议在网上没有对应的介绍,似乎是activeMQ自己定义的一种协议,官方网站对其的介绍如下:
OpenWire is our cross language Wire Protocol to allow native access to ActiveMQ from a number of different languages and platforms. The Java OpenWire transport is the default transport in ActiveMQ 4.x or later. For other languages see the following...
stomp协议:STOMP,Streaming Text Orientated Message Protocol,是流文本定向消息协议,是一种为MOM(Message Oriented Middleware,面向消息的中间件)设计的简单文本协议。
ws协议:即websocket协议,基于h5
官方示例中,5种都有
<transportConnectors> <!-- DOS protection, limit concurrent connections to 1000 and frame size to 100MB --> <transportConnector name="openwire" uri="tcp://0.0.0.0:61616?maximumConnections=1000&wireFormat.maxFrameSize=104857600"/> <transportConnector name="amqp" uri="amqp://0.0.0.0:5672?maximumConnections=1000&wireFormat.maxFrameSize=104857600"/> <transportConnector name="stomp" uri="stomp://0.0.0.0:61613?maximumConnections=1000&wireFormat.maxFrameSize=104857600"/> <transportConnector name="mqtt" uri="mqtt://0.0.0.0:1883?maximumConnections=1000&wireFormat.maxFrameSize=104857600"/> <transportConnector name="ws" uri="ws://0.0.0.0:61614?maximumConnections=1000&wireFormat.maxFrameSize=104857600"/> </transportConnectors>
相关推荐
- **持久化**:ActiveMQ支持将消息持久化到磁盘,即使在服务器重启后也能恢复未处理的消息。 - **网络连接**:支持跨多个节点的集群配置,提高可用性和容错性。 - **Web控制台**:提供了一个基于Web的管理界面,...
同时,ActiveMQ支持集群部署,可以轻松地扩展处理能力以应对大规模的消息处理需求。 在"activemq-demo"压缩包中,通常会包含以下内容: 1. 项目配置文件:如activemq.xml,定义了ActiveMQ服务器的配置,包括网络...
3. **持久化(Persistence)**: ActiveMQ支持消息持久化,即使服务器重启,也不会丢失未处理的消息。 4. **网络连接(Network of Brokers)**: 多个ActiveMQ实例可以通过网络连接形成集群,实现消息的负载均衡和...
1. **消息队列**:ActiveMQ支持多种消息模式,如点对点(Queue)和发布/订阅(Topic)。消息队列确保消息的可靠传输,即使在发送方和接收方之间发生故障时也能保持数据的完整性。 2. **JMS兼容性**:ActiveMQ完全...
Apache ActiveMQ支持多种消息协议,包括JMS、AMQP、STOMP、OpenWire和MQTT。MQTT的集成使得ActiveMQ成为处理IoT设备数据的理想选择。在“apache-activemq-5.15.9-bin.zip”中,包含了在Windows上运行Apache ActiveMQ...
ActiveMQ支持多种协议,包括开放消息传递接口(Openwire)、STOMP、XMPP、AMQP和WebSockets,使其能够与各种不同的系统和语言进行交互。 在安装过程中,解压"apache-activemq-5.15.8-bin.zip"后,你会得到一个包含...
MQ是消息中间件,是一种在分布式系统中应用程序借以传递消息的媒介,常用的有ActiveMQ,RabbitMQ,kafka。ActiveMQ是Apache下的开源项目,完全支持JMS1.1和J2EE1.4规范的JMS Provider实现。 特点: 1、支持多种...
1. **消息持久化**:ActiveMQ支持将消息存储在磁盘上,即使在服务器重启后也能保证消息的完整性,这是基于JMS规范中的持久化队列和主题实现的。 2. **多种协议支持**:除了JMS,ActiveMQ还支持STOMP、AMQP、MQTT等...
同时,ActiveMQ支持多种特性,如事务处理、消息确认、消息分发策略(如广播、路由),以及消息优先级和时间戳,确保了消息的可靠性和一致性。 为了在Windows上部署这个版本的ActiveMQ,你需要: 1. 解压下载的zip...
此外,ActiveMQ支持多种协议,包括开放的消息队列管理协议(STOMP)、高级消息队列协议(AMQP)、纯文本控制协议(OpenWire)等,这使得它能够与其他语言和平台的客户端进行通信。开发者可以利用这些协议编写自己的...
ActiveMQ是JMS的一个具体实现,支持JMS的两种消息模型。ActiveMQ使用AMQP协议集成多平台应用,使用STOMP协议通过websockets在Web应用程序之间交换消息,使用MQTT协议管理物联网设备 ActiviMq消息队列,可解决服务解...
- **持久化**:ActiveMQ支持消息持久化,即使在服务器重启后,也能保证未被消费的消息不会丢失。 - **多协议支持**:除了JMS外,还支持多种消息协议,适应不同的应用场景。 - **高可用性**:通过集群和复制策略,...
2. **主题(Topic)与队列(Queue)**:ActiveMQ支持两种消息模型——发布/订阅(Publish/Subscribe)和点对点(Point-to-Point)。主题适用于广播式通信,多个订阅者可以接收到相同的消息;队列则遵循FIFO(先进先...
6. **持久化**:ActiveMQ支持多种持久化机制,包括本地文件系统、JDBC数据库和LevelDB,确保在服务重启或故障后仍能保留消息。 7. **高可用性**:通过集群和复制策略,ActiveMQ可以实现高可用性和负载均衡。多个...
4. **主题与队列**:ActiveMQ支持两种消息模式:主题(Topic)和队列(Queue)。主题用于广播式通信,一条消息可以被多个消费者接收;队列则遵循先入先出(FIFO)原则,消息只能被一个消费者接收。 5. **管理界面**...
ActiveMQ作为一款消息中间件,主要负责在分布式系统中传递消息,实现应用程序间的解耦。它支持多种协议,包括开放的消息队列协议(OpenWire)、Stomp、AMQP、MQTT和WebSockets,使得不同平台和语言的应用程序可以...
ActiveMQ支持多种消息协议,包括开放消息中间件接口(Open Message Middleware Interface, OMI)、简单对象访问协议(Simple Object Access Protocol, SOAP)、Java消息服务(Java Message Service, JMS)等,使其...
Apache ActiveMQ是一个开源的、高性能的、轻量级的消息中间件,支持多种协议,如OpenWire、STOMP、AMQP、MQTT、XMPP等,适用于多种环境,包括Java、C++、Python、Ruby等多种语言。它的核心功能包括发布/订阅和点对点...
- **网络代理**:ActiveMQ支持网络代理,使得不同网络的Broker可以相互通信。 总之,"apache-activemq-5.15.11-bin.tar.gz"提供了强大的消息中间件服务,适用于Linux环境,涵盖了高可用性、高性能、安全性和可扩展...
1. **多协议支持**:ActiveMQ支持多种消息传输协议,如OpenWire、STOMP、AMQP、MQTT和XMPP,这使得它能够与其他语言和平台无缝集成。 2. **持久化**:ActiveMQ提供了消息的持久化存储,即使在服务器重启或网络故障...