Spring与activemq整合,消费者的消费速度非常慢

问题描述

我使用spring与activemq整合发送消息,发送速度可以达到10000/s,但是消费者的消费速度却是非常慢,求给位大神帮忙!!!这是我配置文件的内容:<beanid="innerNgbfJmsFactory"class="org.apache.activemq.ActiveMQConnectionFactory"><!--<propertyname="brokerURL"value="failover:(tcp://10.253.45.103:61616)"/>--><propertyname="brokerURL"value="${ngbf.jms.provider.url}"/><!--慢消费者设置为true,快消费者设置为false--><propertyname="dispatchAsync"value="true"/><!--<propertyname="producerWindowSize"value="10240000"/><propertyname="useAsyncSend"value="true"/>--></bean><!--设置发送连接池,提高性能--><beanid="ngbfJmsSenderFactory"class="org.apache.activemq.pool.PooledConnectionFactory"destroy-method="stop"><propertyname="connectionFactory"ref="innerNgbfJmsFactory"/><!--<propertyname="maxConnections"value="100"></property><propertyname="maximumActive"value="100"></property><propertyname="exclusiveConsumer"value="true"></property>--></bean><!--设置接收连接池,和发送区分以提高性能--><beanid="ngbfJmsReveiverFactory"class="org.apache.activemq.pool.PooledConnectionFactory"destroy-method="stop"><propertyname="connectionFactory"ref="innerNgbfJmsFactory"/><!--<propertyname="sessionCache"value="10"></property>--><!--<propertyname="maxConnections"value="100"></property><propertyname="maximumActive"value="100"></property>--></bean><!--发送模板--><beanid="ngbfJmsTemplate"class="org.springframework.jms.core.JmsTemplate"><propertyname="connectionFactory"ref="ngbfJmsSenderFactory"/><propertyname="messageConverter"ref="ngbfMessageByteConvert"/><!--<propertyname="defaultDestination"ref="destination"/>--></bean><!--消息转换器--><beanid="ngbfMessageConvert"class="com.kingstar.ngbf.s.jms.MessageUnitConvert"/><beanid="ngbfMessageTextConvert"class="com.kingstar.ngbf.s.jms.MessageUnitTextConvert"/><beanid="ngbfMessageByteConvert"class="com.kingstar.ngbf.s.jms.MessageUnitByteConvert"/><!--缺省的消息监听适配器--><beanid="ngbfDefaultMessageListenerAdapter"class="org.springframework.jms.listener.adapter.MessageListenerAdapter"abstract="true"><propertyname="defaultListenerMethod"value="handleMessage"/><!--handleMessage&receive--><propertyname="messageConverter"ref="ngbfMessageByteConvert"/></bean><!--定义destination--><!--<beanid="destination"class="org.apache.activemq.command.ActiveMQQueue"><constructor-argindex="0"><value>NGBF.Queue?consumer.exclusive=true&amp;consumer.priority=10</value></constructor-arg></bean>--><!--定义缺省的Queue消息监听器--><beanid="ngbfDefaultQueueMessageListener"parent="ngbfDefaultMessageListenerAdapter"><constructor-arg><beanclass="com.kingstar.ngbf.s.jms.MessageUnitQueueListener"/></constructor-arg></bean><!--<beanid="ngbfDefaultQueueMessgeListener1"class="org.springframework.jms.listener.adapter.MessageListenerAdapter"><constructor-arg><beanclass="com.kingstar.ngbf.s.jms.MessageUnitQueueListener1"/></constructor-arg><propertyname="defaultListenerMethod"value="handleMessage"/><propertyname="messageConverter"ref="ngbfMessageByteConvert"/></bean>--><!--定义缺省的Topic消息监听器--><beanid="ngbfDefaultTopicMessageListener"parent="ngbfDefaultMessageListenerAdapter"><constructor-arg><beanclass="com.kingstar.ngbf.s.jms.MessageUnitTopicListener"/></constructor-arg></bean><beanid="taskExecutor"class="org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor"><propertyname="corePoolSize"value="10"/><propertyname="maxPoolSize"value="100"/><propertyname="queueCapacity"value="1000"/><propertyname="keepAliveSeconds"value="300"/></bean><!--缺省的消息监听器Queue容器,可以被子类集成改写--><beanid="ngbfDefaultQueueListenerContainer"class="org.springframework.jms.listener.DefaultMessageListenerContainer"lazy-init="false"><propertyname="connectionFactory"ref="ngbfJmsReveiverFactory"/><propertyname="destinationName"value="NGBF.Queue"/><propertyname="pubSubDomain"value="false"/><!--事务值为false,接受速度明显提高--><!--<propertyname="sessionTransacted"value="false"/>--><propertyname="messageListener"ref="ngbfDefaultQueueMessageListener"/><!--多线程监听?--><!--maxMessagesPerTask值小于-1,循环接收消息--><propertyname="maxMessagesPerTask"value="-1"/><propertyname="concurrentConsumers"value="10"/><propertyname="maxConcurrentConsumers"value="100"/><propertyname="idleTaskExecutionLimit"value="2"/><propertyname="receiveTimeout"value="10000"/><propertyname="cacheLevel"value="3"/><propertyname="taskExecutor"ref="taskExecutor"/></bean><beanid="ngbfDefaultQueueListener"parent="ngbfDefaultQueueListenerContainer"><propertyname="messageSelector"value="${ngbf.jms.queue.selector}"/><!--<propertyname="destinationName"value="${ngbf.jms.queue.default}"/>--><propertyname="destinationName"value="NGBF.Queue"/></bean>

解决方案

解决方案二:
各位大神帮个忙啊!!!!
解决方案三:
别沉下去啊!
解决方案四:
帮顶,最近我也在用activemq,只能算是刚入门的级别,只要有钱出钱,有力出力了
解决方案五:
只能有钱出钱有力出力了

时间: 2024-09-25 03:24:29

Spring与activemq整合,消费者的消费速度非常慢的相关文章

Sping+ActiveMQ整合

通过前一篇<ActiveMQ简述>大概对ActiveMQ有了一个大概的认识,本篇所阐述的是如何通过Spring继承ActiveMQ进而更有效.更灵活的运用ActiveMQ. Spring和ActiveMQ整合需要在项目中包含以下这几个jar包(缺一不可):activeio-core-3.1.4.jar,activemq-all-5.13.2.jar,activemq-pool-5.13.2.jar,commons-pool2-2.4.2.jar,这些jar可以在ActiveMQ的安装包中的/l

spring和hibernate整合出错,请大神帮忙解决,谢谢

问题描述 spring和hibernate整合出错,请大神帮忙解决,谢谢 <!-- Hibernate和spring整合的配置 配置SessionFactory --> <!-- 指定hibernate的配置文件位置 --> <!-- 配置c3p0数据库连接池 --> <!--通过反射设置set方法--> <!-- 数据连接信息 --> <!-- 其他配置 --> <!-- 初始化时获取三个连接,取值应在minPoolSize与

浅析Spring和MyBatis整合及逆向工程_java

spring和mybatis整合 整合思路 需要spring通过单例方式管理SqlSessionFactory. spring和mybatis整合生成代理对象,使用SqlSessionFactory创建SqlSession.(spring和mybatis整合自动完成) 持久层的mapper都需要由spring进行管理. 整合环境 创建一个新的java工程(接近实际开发的工程结构) jar包: mybatis3.2.7的jar包 spring3.2.0的jar包 mybatis和spring的整合

请教spring 3+mybatis整合出错问题

问题描述 请教spring 3+mybatis整合出错问题 spring 3+mybatis3+spring security整合,我的包和层次结构如下:采用的是按照模块分层, 每层有dao,sevrice,web三个目录,所有的实体类放在model文件夹中 security包中,有dao,service,web三个目录,其中 SecurityDao.java @MyBatisDao public interface SecurityDao extends BaseMapper { // 获得群

spring和hibernate整合

问题描述 spring和hibernate整合 class="org.apache.commons.dbcp.BasicDataSource"> value="com.mysql.jdbc.Driver"> class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"> <property name="dataSource">

ssh整合-spring hibernate struts2整合出现空指针异常

问题描述 spring hibernate struts2整合出现空指针异常 本人菜鸟大学生一枚,跪求高手指教,不甚感激, 我在spring hibernate整合后测试没有问题,可以实现对数据库的操作,然后我整合struts,同样的在action中调用业务方法,查询数据库所有的时候,出现空指针异常 解决方案 调试下哪的空指针,如果是属性注入失败的话,检查spring的配置文件是否正确. 解决方案二: 没有进入到你的action中的方法里面,用debug调试一下,看看是不是哪里写错了 解决方案三

spring springmvc mybatis整合时,tomcat启动正常,查询数据库时报错

问题描述 spring springmvc mybatis整合时,tomcat启动正常,查询数据库时报错 Could not get JDBC Connection; nested exception is org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (Access denied for user 'root'@'localhost' (using password: YE

SSH整合学习笔记之spring与hibernate整合(二)--C3P0

SSH整合学习笔记 现在将之前的spring与hibernate整合修改一下,使用C3P0数据库连接池.基本的配置没有改变,只是增加了一个jdbc.properties文件和修改了applicationContext.xml和hibernate.cfg.xml文件的相关配置. jdbc.properties jdbcUrl= jdbc:mysql:///spring2hibernate driverClass = com.mysql.jdbc.Driver username = root pas

hibernate4-求助大神,spring.springMvc.hibernate整合。并且全是注解

问题描述 求助大神,spring.springMvc.hibernate整合.并且全是注解 实在找不到教程,望能提供和完整的教程,视频最好 解决方案 给你了你就跑了不采纳怎么办?所以如果需要教程,请先采纳下姐姐的回答,姐姐这就给你. 解决方案二: 慕课网上找找,还有csdn学院里面找找,传智播客的视频教程 找找总有的.现在网络资源这么丰富,勤快耐心点,学习资源还是一大堆的.祝好! 解决方案三: 这个从网上搜吧.去git 里面找个下载. 解决方案四: http://v.youku.com/v_sh