activeMQ在处理大量并发消息出现的问题
来源:互联网 发布:2017淘宝店铺扣分规则 编辑:程序博客网 时间:2024/05/16 05:27
我在系统中使用activemq处理客户发入的手机短信,运行一段时间后发现了问题,在发送到queue的消息并发较多时,消费端只能接收一部分,比如100条消息在较短的时间内发入,总有10来条接收不到,存放在服务器上,而且这些消息一直不能主动发送出来,后面继续进入的消息都能正常处理,最终只有重新启动服务消费端才能接收到那部分剩下的消息。
1、考虑到是否是同步异步接收的关系,调整了连接参数,发现异步效果稍微好点,但还是有同样问题。
2、考虑是否事务能有影响,加入JTA事务,发现加与不加事务效果相同。
问题:
activemq的queue中,如果消费端消息处理能力不够,积累的消息存在服务端,那服务端是否会自动尝试再次发送呢,能否设置呢?
下面是我的配置
1、考虑到是否是同步异步接收的关系,调整了连接参数,发现异步效果稍微好点,但还是有同样问题。
2、考虑是否事务能有影响,加入JTA事务,发现加与不加事务效果相同。
问题:
activemq的queue中,如果消费端消息处理能力不够,积累的消息存在服务端,那服务端是否会自动尝试再次发送呢,能否设置呢?
下面是我的配置
- <amq:broker useJmx="false" persistent="true">
- <amq:persistenceAdapter>
- <amq:amqPersistenceAdapter directory="activemq-data" maxFileLength="32mb"/>
- </amq:persistenceAdapter>
- <amq:transportConnectors>
- <amq:transportConnector uri="stomp://localhost:61613"/>
- <amq:transportConnector uri="tcp://localhost:61616"/>
- </amq:transportConnectors>
- </amq:broker>
- <bean id="jmsConnectionFactory"
- class="org.jencks.pool.PooledSpringXAConnectionFactory" autowire="byType">
- <property name="connectionFactory">
- <bean class="org.apache.activemq.ActiveMQXAConnectionFactory">
- <property name="brokerURL">
- <value>vm://localhost</value>
- </property>
- </bean>
- </property>
- </bean>
下面是消费端配置
- <amq:queue name="smsScanADestination" physicalName="CORAL.JMS.SMSROUTER.A"/>
- <bean id="smsScanAListenerContainer"
- class="org.springframework.jms.listener.DefaultMessageListenerContainer">
- <property name="connectionFactory" ref="jmsConnectionFactory" />
- <property name="destination" ref="smsScanADestination" />
- <property name="messageListener" ref="smsAListener" />
- </bean>
- <!-- Message Driven POJO (MDP) -->
- <bean id="smsAListener"
- class="org.springframework.jms.listener.adapter.MessageListenerAdapter">
- <constructor-arg>
- <ref bean="smsAListenerService" />
- </constructor-arg>
- <property name="defaultListenerMethod" value="handleMessage"/>
- </bean>
- <bean id="smsAListenerService"
- class="cn.org.coral.biz.sms.service.SmsAListenerService"/>
- activeMQ在处理大量并发消息出现的问题
- ActiveMQ消息多线程并发处理
- ActiveMQ发送消息出现连接失效问题
- ActiveMQ消息确认的问题
- JBOSS集成的ActiveMQ处理消息
- activemq消息积压处理
- IIS处理并发请求时出现的问题及解决
- IIS处理并发请求时出现的问题及解决
- Activemq构建高并发、高可用的大规模消息系统
- 关于ActiveMQ消息接收的问题
- 处理大量数据并发操作
- MySQL高效处理大量并发的数据库连接方法
- Java使用限流处理大量的并发请求
- spring+activeMq搭建出现的问题
- 大量syn请求处理的一些问题
- ActiveMQ高并发处理方案
- spring+activemq配置多个生产者,多个消费者并发处理消息
- 消息处理利器 ActiveMQ 的介绍 & Stomp 协议的使用
- android "Could not find class 'org.apache.http.entity.mime.content.FileBody" error
- 黑马程序员 25 Java基础加强-07-动态代理篇
- xpath使用小例子
- 淡定人生,享受平静
- NET的编译勉强算是编译,但不是传统意义上的编译。应该说是个更高级的解释过程
- activeMQ在处理大量并发消息出现的问题
- GCT逻辑之上篇——逻辑推理
- 动作编辑器
- 【转】java web项目改名之后tomcat服务器项目自动重命名
- 传智播客成都中心——JavaEE+3G精品就业班
- 中科院分词系统ICTCLAS50 (Linux)
- WEB应用使用过滤器解决编码乱码问题
- 多表连接
- 学习《数据结构》有感之以字符串形式输入链表实现多项式相加