消息队列中间件之ActiveMQ初识

ActiveMQ Apache出品,最流行的,能力强劲的开源消息总线。

ActiveMQ 是一个完全支持JMS1.1J2EE 1.4规范的JMS Provider实现

主要特点:

1. 多种语言和协议编写客户端。语言: Java, C, C++, C#, Ruby, Perl, Python, PHP。应用协议: OpenWire,Stomp REST,WS Notification,XMPP,AMQP

2. 完全支持JMS1.1J2EE 1.4规范(持久化,XA消息,事务)

3. Spring的支持,ActiveMQ可以很容易内嵌到使用Spring的系统里面去,而且也支持Spring2.0的特性


发布形式:

1.点对点,即一个消息发布者,只有一个消息接受者

2.发布/订阅,一个消息发布者,可以有多个消息接受者


消息队列中间件之ActiveMQ初识


消息形式:

1. StreamMessage -- Java原始值的数据流

2.MapMessage--一套名称-值对

3.TextMessage--一个字符串对象

4.ObjectMessage--一个序列化的Java对象

5.BytesMessage--一个字节的数据流


原生的ActiveMQ使用方法不推荐,这里推荐和spring整合后使用方式。

第一步:配置ConnectionFactory

<!-- 真正可以产生Connection的ConnectionFactory,由对应的 JMS服务厂商提供 -->

<bean id="targetConnectionFactory"  class="org.apache.activemq.ActiveMQConnectionFactory">

<property name="brokerURL" value="tcp://192.168.25.168:61616" />

</bean>

<!-- Spring用于管理真正的ConnectionFactory的ConnectionFactory -->

<bean id="connectionFactory" class="org.springframework.jms.connection.SingleConnectionFactory">

<!-- 目标ConnectionFactory对应真实的可以产生JMS Connection的ConnectionFactory -->

<property name="targetConnectionFactory" ref="targetConnectionFactory" />

</bean>

第二步:配置生产者

<!-- 配置生产者 -->

<!-- Spring提供的JMS工具类,它可以进行消息发送、接收等 -->

<bean id="jmsTemplate"  class="org.springframework.jms.core.JmsTemplate">

<!-- 这个connectionFactory对应的是我们定义的Spring提供的那个ConnectionFactory对象 -->

<property name="connectionFactory"  ref="connectionFactory" />

</bean>

第三步:配置生产者


<!--这个是队列目的地,点对点的 -->

<bean id="queueDestination"  class="org.apache.activemq.command.ActiveMQQueue">

<constructor-arg>

<value>spring-queue</value>

</constructor-arg>

</bean>

<!--这个是主题目的地,一对多的 -->

<bean id="topicDestination"  class="org.apache.activemq.command.ActiveMQTopic">

<constructor-arg value="topic" />

</bean>


基本的配置完成之后,就可以在程序中是用ActiveMQ来发布消息了。


铸剑团队签名:

【总监】十二春秋之,[email protected]

【Master】戈稻不苍,[email protected]

【Java开发】雨鸶,[email protected];思齐骏惠,[email protected]小王子,[email protected];巡山小钻风,[email protected]

【VS开发】豆点,[email protected]

【系统测试】土镜问道,[email protected];尘子与*,[email protected]

【大数据】沙漠绿洲,[email protected];张三省,[email protected]

【网络】夜孤星,[email protected]

【系统运营】三石头,[email protected];平凡怪咖,[email protected]

【容灾备份】秋天的雨,[email protected]

【安全】保密,你懂的。

原创作者:小王子

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。