activemq
文章平均质量分 51
YAOQINGGG
在技术中寻找快乐
展开
-
调试activemq源码
git地址:https://github.com/apache/activemq.git如果是编译最新代码activemq-5.14需要jdk1.7,maven3以上。在idea里面倒入整个项目,mvn -Dtest=false install之后, 会在activemq/assembly/target目录下生成apache-activemq-5.15.0-SNAPSHOT-bin.ta...原创 2016-08-23 22:45:07 · 3212 阅读 · 2 评论 -
activemq发送方速率控制
queue里面send方法 @Override public void send(final ProducerBrokerExchange producerExchange, final Message message) throws Exception { final ConnectionContext context = producerExchange.get...原创 2019-06-02 15:52:47 · 620 阅读 · 0 评论 -
activemq消费端确认机制
// 如果是同步receive方式,下面该方法是消息确认的逻辑private void afterMessageIsConsumed(MessageDispatch md, boolean messageExpired) throws JMSException { if (unconsumedMessages.isClosed()) { return; ...原创 2019-05-27 23:47:39 · 1399 阅读 · 0 评论 -
activemq保证消息顺序原理
有时候我们需要消费者消费消息是顺序消费的。比如生成一个订单,先扣库存,然后扣款,这两条消息,由于现在系统都是分布式的,我们可能需要在有多台机器的多个消费者时,这两条消息是顺序消费的。在activemq中,有两种方式来保证,消息消费的顺序性。 1)通过高级特性consumer独有消费者(exclusive consumer)queue = new ActiveMQQueue("TEST.Q...原创 2018-09-09 22:26:23 · 8444 阅读 · 0 评论 -
activemq消费者消息预取和消息消费确认
消费者可以通过设置prefetchSize进行批量取消息,有默认值。可以设置: 1、 tcp://localhost:61616?jms.prefetchPolicy.all=502、 tcp://localhost:61616?jms.prefetchPolicy.queuePrefetch=13、 queue = new ActiveMQQueue(“TEST.QUEUE?co...原创 2018-04-27 13:20:42 · 1860 阅读 · 0 评论 -
activemq消息的持久化
/** * Created by brady on 17/4/8. */public class TestProducer { public static void main(String[] args) throws Exception { ConnectionFactory connectionFactory = new ActiveMQConnectionFac...原创 2018-04-26 23:49:27 · 284 阅读 · 0 评论 -
activemq的broker对于queue的处理过程
先写一下生产者和消费者的代码生成者代码/** * Created by brady on 17/4/8. */public class TestProducer { public static void main(String[] args) throws Exception { ConnectionFactory connectionFactory = ...原创 2018-04-21 23:05:19 · 1029 阅读 · 0 评论 -
activemq发送同步发送和异步发送
在默认大多数情况下,AcitveMQ 是以异步模式发送消息。例外的情况:在没有使用 事务的情况下,生产者以PERSISTENT 传送模式发送消息。在这种情况下,send 方法都 是同步的,并且一直阻塞直到ActiveMQ 发回确认消息:消息已经存储在持久性数据存 储中。这种确认机制保证消息不会丢失,但会造成生产者阻塞从而影响反应时间。 高性能的程序一般都能容忍在故障情况下丢失少量数据。如果...原创 2018-04-06 14:31:13 · 3845 阅读 · 0 评论 -
activemq broker topic消息收发处理过程
首先看一下activemq的网络模型(获取自网络)。 可以看到,TcpTransportServer是一个监听网络的类,如果有socket连接,便会放入阻塞队列,然后创建一个TransportConnection类,该类接收socket的消息,进行逻辑处理;先看看TransportConnector在干啥 第一步:设置server处理类 第二步:接收到连接socket加入线程池 ...原创 2018-04-16 00:46:46 · 2519 阅读 · 0 评论 -
activemq接收消息pull与push模式
1。同步和异步的方式 public static void main(String[] args) { // ConnectionFactory :连接工厂,JMS 用它创建连接 ConnectionFactory connectionFactory; // Connection :JMS 客户端到JMS Provider 的连接 ...原创 2018-03-25 01:00:23 · 2286 阅读 · 1 评论 -
activemq支持事务
activemq支持两种事务,本地事务,和分布式事务public class TestProducer { public static void main(String[] args) throws Exception { ConnectionFactory connectionFactory = new ActiveMQConnectionFactory( ...原创 2019-06-08 19:43:22 · 2700 阅读 · 0 评论