ActiveMQ是一款基于Java的开源消息服务器产品,因此,我们可以将其集成到通过Java实现的业务系统中。下面将对集成方法做一个简单的总结。
首先,我们看一下ActiveMQ中的部分核心类:
195715742
org.apache.activemq.Service是ActiveMQ中的一个接口,定义了start和stop方法。org.apache.activemq.broker.BrokerService是ActiveMQ中的核心类,其实现自Service接口,用于对外提供消息服务。org.apache.activemq.broker.XBeanBrokerService是BrokerService的一个子类,XBeanBrokerService实例可以通过xbean xml配置文件生成。ActiveMQ作为单独服务启动时,其配置文件activemq.xml就是xbean xml格式的,启动后生成的就是一个XBeanBrokerService实例。

1.通过VM协议实现集成:
客户端连接ActiveMQ消息服务器时,可以使用多种协议(TCP、VM、STOMP等),其中VM协议是指客户端会从当前JVM中查找ActiveMQ消息服务器实例,若查找到,则与其建立连接,若查找不到,则自动创建ActiveMQ消息服务器实例。如果客户端和服务器端都在一个JVM中,则可以通过VM协议实现ActiveMQ消息服务器的自动创建、与业务系统的集成。

2.直接创建BrokerService实例:

3.使用工厂方法创建BrokerService实例:

4.通过Spring配置直接创建BrokerService实例

5.通过Spring配置使用BrokerFactoryBean创建BrokerService实例:

标签:

基于WebSocket实现微信小程序的消息推送

微信小程序支持通过基于WebSocket进行消息推送,提供了相应的API,例如创建连接示例代码: JavaScript wx.connectSocket({ ...

阅读全文

基于nginx-sticky-module-ng实现会话保持(Sticky Sessions)

对服务进行集群部署,前端进行负载均衡时,需要实现会话保持,对于同一会话的多个请求,通过集群中的一个节点来提供服务。系统的部署结构如图所示,通过Resin...

阅读全文

ActiveMQ基于Zookeeper和LevelDB实现Master/Slave

ActiveMQ的Master/Slave目前支持三种实现方式: 1)Shared File System Master Slave; 2)JDBC Master Slave; 3)Replicated LevelDB Store。 对于第三种方...

阅读全文