ActiveMQ支持的client-broker:
Transmission Control Protocol (TCP)
这是默认的Broker配置,TCP的Client监听端口是61616。
在网络传输数据前,必须要序列化数据,消息是通过一个叫wire protocol的来序列化成字节流。目的是促使网络上的效率和数据快速交互。
TCP连接的URI形式:
tcp://hostname:port?key=value&key=value,加粗部分是必须的
TCP协议传输可靠性高,稳定性强,支持任何平台
New I/O API Protocol
NIO协议和TCP协议类似,但NIO更侧重于底层的访问操作。它允许开发人员对同一资源可有更多的client调用和服务端有更多的负载。
适合使用NIO协议的场景:
(1) 可能有大量的Client去链接到Broker上
一般情况下,大量的Client去链接Broker是被操作系统的线程数所限制的。因此, NIO的实现比TCP需要更少的线程去运行,所以建议使用NIO协议
(2)可能对于Broker有一个很迟钝的网络传输 NIO比TCP提供更好的性能
NIO连接的URI形式:nio://hostname:port?key=value
Transport Connector配置示例:
<transportConnectors>
<transportConnector name="tcp"
uri="tcp://localhost:61616?trace=true" /> <transportConnector
name="nio"
uri="nio://localhost:61618?trace=true" /> </transportConnectors>
User Datagram Protocol(UDP)
UDP仅仅是一个链接协议,所以它没有可靠性之说
TCP是被用在稳定可靠的场景中使用的;UDP通常用在快速数据传递和不怕数据丢失的场景中,还有ActiveMQ通过防火墙时,只能用UDP
UDP连接的URI形式:udp://hostname:port?key=value
<transportConnectors>
<transportConnector
name="udp"
uri="udp://localhost:61618?trace=true" /> </transportConnectors>
Secure Sockets Layer Protocol (SSL)
连接的URI形式:ssl://hostname:port?key=value
Transport Connector配置示例:
<transportConnectors>
<transportConnector name="ssl" uri="ssl://localhost:61617?trace=true"/>
</transportConnectors>
VM Protocol(VM)
VM transport允许在VM内部通信,从而避免了网络传输的开销。这时候采用的连接不是socket连接,而是直接的方法调用。
第一个创建VM连接的客户会启动一个embed VM broker,接下来所有使用相同的broker name的VM连接都会使用这个broker。当这个broker上所有的连接都关闭的时候,这个broker也会自动关闭。
连接的URI形式:vm://brokerName?key=value
分享到:
相关推荐
ActiveMQ是Apache出品的、采用Java语言编写的开源消息中间件,实现了高级消息队列协议(AMQP)和Java消息服务(JMS)。它提供了多种功能特性,包括但不限于消息持久化、事务处理、消息优先级排序等。ActiveMQ因其...
1. 高性能:ActiveMQ支持多种协议(如OpenWire、STOMP、AMQP、XMPP等),确保高效的消息传输。 2. 高可用性:通过集群和故障转移技术,确保服务的持续可用。 3. 安全性:支持用户认证和授权,保障数据安全。 4. 跨...
ActiveMQ是Apache软件基金会开发的一款开源消息中间件,它支持多种协议,如OpenWire、AMQP、STOMP等,并提供了丰富的API和管理工具。本文将围绕ActiveMQ常见的问题进行总结,以帮助开发者更好地理解和解决实际操作中...
5. 安全性:ActiveMQ内置了用户认证和授权机制,可以通过SSL/TLS加密传输,保障数据的安全性。 二、ActiveMQ应用场景 1. 微服务通信:在微服务架构中,ActiveMQ作为服务间通信的桥梁,实现异步解耦和数据同步。 2. ...
总结来说,Apache ActiveMQ是Linux环境下的强大消息中间件,提供了丰富的特性和高度的灵活性,对于构建分布式系统和实现微服务架构有着重要的作用。通过理解和掌握ActiveMQ的使用,可以提升系统的可扩展性和稳定性,...
3. **多种传输协议**:ActiveMQ支持多种网络传输协议,包括基础的TCP、安全的SSL/TLS、基于非阻塞I/O的NIO以及广播协议UDP。这些协议的选择为不同场景下的通信需求提供了灵活性和安全性。 4. **AJAX支持**:...
总结来说,ActiveMQ作为一款功能丰富的开源消息中间件,提供了多种语言支持、广泛的服务器兼容性、灵活的消息传输协议,以及丰富的消息模式,是构建分布式系统和解耦应用程序的关键组件。其易于安装、监控和管理的...
2. **高性能的数据分发**:通过高效的内存管理和优化的网络传输协议,ActiveMQ能够实现高速的数据传输。 3. **异步处理**:在高并发和大流量的应用场景下,ActiveMQ支持异步消息处理机制,这有助于提高系统的响应...
总结来说,《ActiveMQ in Action》是一本实操性的书籍,它不仅详细介绍了ActiveMQ的基本概念和特点,还通过实例演示了如何配置和使用ActiveMQ,是希望深入学习和使用ActiveMQ的开发者的宝贵资源。文档通过大量的实战...
3. **多种协议**:除了JMS之外,ActiveMQ还支持STOMP、AMQP、MQTT等多种消息传输协议,增加了系统的兼容性。 4. **高可用性**:通过网络集群和故障转移,ActiveMQ可以实现高可用性和负载均衡,确保服务不间断。 5. *...
- **非均匀环境集成**:不同编程语言和网络协议的应用可以通过 ActiveMQ 实现通信。 - **故障隔离**:通过消息队列将处理任务解耦,即使某些服务暂时不可用也不会影响整体流程。 #### 四、ActiveMQ 的特性列表与...
ActiveMQ 是Apache出品的一款优秀的开源消息中间件,支持多种消息传输协议,并且具备良好的扩展性。它基于Java语言开发,支持JMS标准,同时也支持AMQP、STOMP等多种协议。ActiveMQ可以作为消息中间件用于异步通信...
ActiveMQ,作为Apache软件基金会下的一个开源项目,是业界广泛使用的消息中间件,它支持多种消息协议,并且跨平台运行,无论是Windows还是Linux,都能提供稳定且高性能的消息服务。在本文中,我们将深入探讨ActiveMQ...
ActiveMQ支持多种协议,包括开放标准的JMS,以及STOMP、AMQP、MQTT、WS-Notification等。 2. **ActiveMQ 5.15.0特性** - 支持多种消息协议:除了JMS,还支持轻量级的AMQP和MQTT,适用于物联网设备。 - 高性能:...
- **支持多种协议**:它支持多种消息传输协议,如内部VM通信(in-VM)、TCP、SSL、NIO、UDP、JGroups和JXTA。 - **可插拔的架构**:ActiveMQ支持可插拔的体系结构,允许自定义消息存储方式、安全机制等。 - **多种...
ActiveMQ是Apache软件基金会下的一个项目,遵循JMS(Java消息服务)规范,支持多种协议如OpenWire、STOMP、AMQP等,能与各种编程语言无缝对接。ActiveMQ具备高可用性、高性能和可伸缩性,支持发布/订阅和点对点两种...
在这个文件中,你可以设置消息存储、网络连接、传输协议等各种参数。例如,你可以配置多个broker以实现高可用性,或者调整内存和磁盘使用策略以优化性能。 **4. 使用Web控制台** ActiveMQ自带一个基于Web的管理...
最重要的文件是"activemq.xml",它是ActiveMQ的核心配置,定义了如传输协议、队列、主题、网络连接等设置。默认配置适用于大多数情况,但根据项目需求,你可能需要对其进行修改。 3. **data** 目录:此目录存储了...
ActiveMQ 是一个开源的消息中间件,它是 Java Message Service(JMS)规范的一个实现,用于在分布式系统中传输消息。ActiveMQ 支持多种协议,如 OpenWire、STOMP、AMQP 和 MQTT,允许不同平台的应用程序进行通信。它...