ActiveMQ(07):ActiveMQ结合Spring开发--建议
2017-04-16 10:13
253 查看
1、Camel框架支持大量的企业集成模式,可以大大简化集成组件间的大量服务和复杂的消息流。而Spring框架更注重简单性,仅仅支持基本的最佳实践。
2、Spring消息发送的核心架构是JmsTemplate,隔离了像打开、关闭Session和Producer的繁琐操作,因此应用开发人员仅仅需要关注实际的业务逻辑。
但是JmsTemplate损害了ActiveMQ的PooledConnectionFactory对session和消息producer的缓存机制而带来的性能提升。
3、新的Spring里面,可以设置org.springframework.jms.connection.CachingConnectionFactory的sessionCacheSize ,或者干脆使用ActiveMQ的
PooledConnectionFactory,如下:
5、请使用DefaultMessageListenerContainer,它允许异步接收消息并缓存session和消息consumer,而且还可以根据消息数量动态的增加或缩减监听器的数量。
2、Spring消息发送的核心架构是JmsTemplate,隔离了像打开、关闭Session和Producer的繁琐操作,因此应用开发人员仅仅需要关注实际的业务逻辑。
但是JmsTemplate损害了ActiveMQ的PooledConnectionFactory对session和消息producer的缓存机制而带来的性能提升。
3、新的Spring里面,可以设置org.springframework.jms.connection.CachingConnectionFactory的sessionCacheSize ,或者干脆使用ActiveMQ的
PooledConnectionFactory,如下:
<bean id="jmsFactory" class="org.apache.activemq.pool.PooledConnectionFactory" destroy-method="stop"> <property name="connectionFactory"> <bean class="org.apache.activemq.ActiveMQConnectionFactory"> <property name="brokerURL"> <value>${activemq.brokerURL}</value> </property> <property name="userName" value="${activemq.userName}"></property> <property name="password" value="${activemq.password}"></property> </bean> </property> <property name="maxConnections" value="${activemq.maxConnections}"></property> </bean>4、不建议使用JmsTemplate的receive()调用,因为在JmsTemplate上的所有调用都是同步的,这意味着调用线程需要被阻塞,直到方法返回,这对性能影响很大。
5、请使用DefaultMessageListenerContainer,它允许异步接收消息并缓存session和消息consumer,而且还可以根据消息数量动态的增加或缩减监听器的数量。
<!-- 消费者监听器 --> <bean id="jmsContainer" class="org.springframework.jms.listener.DefaultMessageListenerContainer"> <property name="connectionFactory" ref="jmsFactory" /> <property name="destination" ref="destinationTopic" /> <property name="messageListener" ref="messageListener" /> </bean>
相关文章推荐
- ActiveMQ结合Spring开发
- ActiveMQ结合Spring开发
- ActiveMQ(06):ActiveMQ结合Spring开发
- 结合Spring2.0和ActiveMQ进行异步消息调用(转)
- 第十二篇 Spring Web Flow 2简化页面流的开发,结合Spring MVC更俊,Spirng Security 3添加安全机制
- Spring-hibernate使用全xml配置结合方式搭建开发
- SpringBoot和Swagger结合提高API开发效率
- Spring结合嵌入式ActiveMQ使用消息队列
- Strut&Spring&Hibernate结合开发举例
- activeMQ学习之一(简单例子介绍,含spring结合)
- SpringBoot和Swagger结合提高API开发效率
- activeMQ与spring结合 使用及配置
- Spring Web Flow 2简化页面流的开发,结合Spring MVC更俊,Spirng Security 3添加安全机制
- idea结合maven开发spring
- storm与spring结合开发
- activemq的配置与结合spring使用
- Activemq5.2.0的spring开发
- Spring Web Flow 2简化页面流的开发,结合Spring MVC更俊,Spirng Security 3添加安全机制
- 如何来用cxf结合spring开发webservice接口
- activeMQ学习之一(简单例子介绍,含spring结合)