
ActiveMQ
csdn_kenneth
这个作者很懒,什么都没留下…
展开
-
消息队列 折腾ActiveMQ时遇到的问题和解决方法 消息丢失怎么办
https://blog.youkuaiyun.com/soulmate_P/article/details/81380937转载 2018-12-04 19:57:47 · 6264 阅读 · 0 评论 -
ActiveMQ(二十五)--ActiveMQ的集群1
Queue consumer cluster和Broker clusterimport org.apache.activemq.ActiveMQConnectionFactory;import javax.jms.*;public class QueueSender1 { public static void main(String[] args) throws JMSE...原创 2018-10-12 20:52:19 · 242 阅读 · 0 评论 -
ActiveMQ(二十四)--容错的链接&动态网络链接
一、容错的连接程序修改如下:第一次运行QueueSender1, 30条消息发送到了brokerA。把brokerA kill掉。再次运行QueueSender1, 30条消息会发送到了brokerB。这就是一种容错。此时,brokerA和brokerB各有30条。把borkerA启动起来。连续运行3次QueueSender1。根据观察,3次...原创 2018-10-12 18:49:40 · 638 阅读 · 0 评论 -
ActiveMQ(二十三)--集群下的消息回流功能
测试:一、单向的情况 重启mq接上一篇的代码,稍作修改先运行QueueSender1,发送30条消息到brokerA然后,运行QueueReceiver2,开始消费,过几秒,停止。此时,brokerB把30条消息都拿到自己这边了。再运行QueueReceiver1,一条消息也收不到。 二、双向的情况重启mq先运行QueueS...原创 2018-10-11 21:42:53 · 898 阅读 · 0 评论 -
ActiveMQ(二十二)--多线程consumer访问集群
import org.apache.activemq.ActiveMQConnectionFactory;import javax.jms.*;public class QueueSender1 { public static void main(String[] args) throws JMSException, InterruptedException { ...原创 2018-10-11 21:08:24 · 502 阅读 · 0 评论 -
ActiveMQ(二十一)--ActiveMQ的静态网络连接
客户端到broker的连接称为transportConnector。conf下的activemq.xml<networkConnectors> <networkConnector name="local network" uri="static://(tcp://192.168.25.128:61616,tcp://192.168.25.128:6...原创 2018-09-03 09:02:11 · 537 阅读 · 0 评论 -
ActiveMQ(一)--简介
一、简介消息中间件(Message Oriented Middleware, MOM)不使用MOM,那么系统A调用系统B,这是一种同步调用,A系统会等待B系统的返回,然后A系统才能继续执行。使用MOM,系统A调用系统B,这是一种异步调用。A把消息发到MOM之后,就不管了,继续往下执行。 二、安装和启动去官网下载Linux的包,放到Linux的安装目录,解压即可。启动: ...原创 2018-08-25 23:29:27 · 254 阅读 · 0 评论 -
ActiveMQ(二十)--在一台服务器上启动多个broker
步骤如下:1.把整个conf文件夹复制一份,比如叫做conf22.修改里面的activmq.xml文件(1)里面的brokerName不能重复(2)数据存放的文件名称不能重复(3)所有涉及的transportConnectors的端口,都要跟前面的不一样3.修改jetty.xml,主要就是修改端口,比如:4.到bin下面,复制一个activmq,比如...原创 2018-08-29 09:18:33 · 1682 阅读 · 0 评论 -
ActiveMQ(二十)--ActiveMQ消息存储持久化-6-(memory message store)
这两个配置,主要的就是把持久化这个属性设置为false。原创 2018-08-29 08:21:16 · 246 阅读 · 0 评论 -
ActiveMQ(十九)--ActiveMQ消息存储持久化-5-(JDBC message store with activemq journal)
JDBC message store with activemq journal这种方式克服了jdbc store的不足,使用快速的缓存写入技术,大大提高了性能。配置实例如下:这种方式,发送出来的消息会在内存中告诉缓存,然后再写入数据库。这样,接收端就不用等到数据库操作完了之后再接收消息。 ...原创 2018-08-29 08:04:30 · 885 阅读 · 0 评论 -
ActiveMQ(二十六)--ActiveMQ的集群2
实操:conf和conf2的activemq.xml都要配这两段。conf和conf2的回流功能注释掉。现在brokerA和brokerB之间没有关系。它们抢着同一个db。用以下代码测试:import org.apache.activemq.ActiveMQConnectionFactory;import javax.jms.*;publ...原创 2018-10-12 21:58:38 · 242 阅读 · 0 评论 -
ActiveMQ(二十七)--Destination高级特性1
一、Wildcards举例 二、Composite Destinations比如一个消息要发送给queue1、queue2、queue3,可以分别发。也可以把queue1、queue2、queue3组成一个虚拟的组。发给这个组就行了。测试一:客户端的做法。同时往多个queue或者topic上发送消息。import org.apache.activemq.A...原创 2018-10-13 21:07:00 · 567 阅读 · 0 评论 -
ActiveMQ(二十八)--Destination高级特性2
一、Visual Destinations测试:先把配置文件整理一下重启mqimport org.apache.activemq.ActiveMQConnectionFactory;import javax.jms.*;public class PersistenceSender { public static void main(String[] a...原创 2018-10-13 22:14:11 · 277 阅读 · 0 评论 -
ActiveMQ(三十七)--AMQ应用
mq适合写的动作,和复杂业务逻辑的处理。很多人来访问的时候,业务逻辑又比较复杂,系统忙不过来,此时,采用异步处理的方式。大量的并发写的操作,适合用mq。 ...原创 2018-10-15 19:44:59 · 368 阅读 · 0 评论 -
ActiveMQ(三十六)--AMQ优化和使用建议
原创 2018-10-15 19:17:46 · 603 阅读 · 0 评论 -
ActiveMQ(三十五)--集成ActiveMQ和Tomcat
一、监控和管理Broker 二、集成ActiveMQ和Tomcat原创 2018-10-15 19:14:44 · 1013 阅读 · 0 评论 -
ActiveMQ(三十四)--Consumer高级特性2
一、Message Selectors 二、Redelivery Policy测试:重传次数,默认为6.用最简单的QueueSender和QueueReceiver进行测试,QueueReceiver不进行commit。先运行QueueSender,然后运行QueueReceiver。不断的运行QueueReceiver,每次都能收到消息。直到第8次才收不到。是1次传递...原创 2018-10-14 23:19:54 · 184 阅读 · 0 评论 -
ActiveMQ(三十三)--Consumer高级特性1
一、Exclusive Consumer 二、Consumer Dispatche Async 三、Consumer Priority 四、Manage Durable Subscribers 五、Message Groups测试:import org.apache.activemq.ActiveMQConnectionFactory;...原创 2018-10-14 20:21:40 · 303 阅读 · 0 评论 -
ActiveMQ(三十二)--Message高级特性2
一、Blob Messages测试:该关闭的配置都先关掉import org.apache.activemq.ActiveMQConnectionFactory;import org.apache.activemq.ActiveMQSession;import org.apache.activemq.BlobMessage;import javax.jms...原创 2018-10-14 17:18:22 · 593 阅读 · 0 评论 -
ActiveMQ(三十一)--Message高级特性1
一、Message Properties 二、Advisory Messageimport org.apache.activemq.ActiveMQConnectionFactory;import javax.jms.*;public class NonPersistenceSender { public static void main(Stri...原创 2018-10-14 14:27:02 · 505 阅读 · 0 评论 -
ActiveMQ(三十)--Message Dispatch高级特性2
一、批量消息确认 二、生产者流量控制测试:import org.apache.activemq.ActiveMQConnectionFactory;import javax.jms.*;public class NonPerSender2 { public static void main(String[] args) throws JMSExce...原创 2018-10-14 12:40:16 · 245 阅读 · 0 评论 -
ActiveMQ(二十九)--Message Dispatch高级特性1
一、Message Cursors这里的批次,就好比是分页。 二、Async Sends 三、Dispatch Policies3.1 严格顺序分发策略测试:import org.apache.activemq.ActiveMQConnectionFactory;import javax.jms.*;public cla...原创 2018-10-14 10:03:27 · 323 阅读 · 0 评论 -
ActiveMQ(十八)--ActiveMQ消息存储持久化-4-(JDBC)
<jdbcPersistenceAdapter dataSource="#mysql-ds" createTablesOnStartup="false" /> <bean id="mysql-ds" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"&原创 2018-08-28 22:47:33 · 532 阅读 · 0 评论 -
ActiveMQ(十七)--ActiveMQ消息存储持久化-3-(AMQ Message Store)
原创 2018-08-28 22:40:27 · 297 阅读 · 0 评论 -
ActiveMQ(十六)--ActiveMQ消息存储持久化-2-(KahaDB Message Store)
概述KahaDB是目前默认的存储方式,可用于任何场景,提高了性能和恢复能力。消息存储使用一个事务日志和仅仅用一个索引文件来存储它所有的地址。KahaDB是一个专门针对消息持久化的解决方案,它对典型的消息使用模式进行了优化。在KahaDB中,数据被追加到data logs中。当不再需要log文件中的数据的时候,log文件会被丢弃。KahaDB的基本配置例子<persisten...原创 2018-08-28 22:14:11 · 712 阅读 · 0 评论 -
ActiveMQ(三)--JMS的消息结构
JMS消息由3部分组成:消息头、属性和消息体消息头:包含消息的识别信息和路由信息,消息头包含一些标准的属性如下:1.JMSDestination:消息发送的目的地:主要指Queue和Topic,自动分配。2.JMSDeliveryMode:传送模式。有两种:持久模式和非持久模式。一条持久性的消息应该被传送“一次仅仅一次”,这就意味着如果JMS提供者出现故障,该消息并不会丢失,它会在服务器恢...原创 2018-08-26 14:05:09 · 621 阅读 · 0 评论 -
ActiveMQ(二)--JMS基本概念
JMS基本概念-1JMS Java Message Service, Java消息服务,是Java EE中的一个技术(Java EE是由20多个技术组成的)JMS规范:JMS定义了Java中访问消息中间件的接口,并没有给予实现,实现JMS接口的消息中间件称为JMS Provider,例如ActiveMQJMS message:JMS的消息,JMS消息由以下三部分组成:1.消息头:每个消息...原创 2018-08-26 12:25:47 · 271 阅读 · 0 评论 -
ActiveMQ从入门到精通(一)
https://www.jianshu.com/p/ecdc6eab554c转载 2018-03-18 11:34:32 · 563 阅读 · 0 评论 -
Spring整合JMS——三种消息监听器
转自:http://ju.outofmemory.cn/entry/87375转载 2018-02-25 15:00:10 · 264 阅读 · 0 评论 -
JMS(一)--JMS基本概念
摘要:The Java Message Service (JMS) API is a messaging standard that allows application components based on the Java Platform Enterprise Edition (Java EE) to create, send, receive, and read messages. It...转载 2017-12-18 17:10:57 · 322 阅读 · 0 评论 -
JMS(六)--ActiveMQ内置Broker启动方式
前言ActiveMQ除了可以作为独立进程单独部署在服务器上之外,也可以很小巧的内嵌在程序中启动,下面我们来简单的介绍内置Broker启动的几种方式。 首先准备工作还是需要准备好activemq的jar包,请自行配置,不多赘述 org.apache.activemq activemq-all 5.15.2一、代码直接启动这种方式直接在代码中启动,因为比较简单,就直接上代码了:package转载 2018-01-18 11:17:58 · 4951 阅读 · 0 评论 -
JMS(五)--ActvieMQ简单使用
一、创建工程所需要的依赖有: org.apache.activemq activemq-all 5.15.2 org.apache.xbean xbean-spring 4.6 这里推荐大家创建工程的时候就使用转载 2018-01-18 11:07:12 · 793 阅读 · 0 评论 -
JMS(三)--ActiveMQ简单的HelloWorld实例
第一篇博文JMS(一)–JMS基本概念,我们介绍了JMS的两种消息模型:点对点和发布订阅模型,以及消息被消费的两个方式:同步和异步,JMS编程模型的对象,最后说了JMS的优点。第二篇博文JMS(二)–ActiveMQ简单介绍以及安装,我们介绍了消息中间件ActiveMQ,安装,启动,以及优缺点。这篇博文,我们使用ActiveMQ为大家实现一种点对点的消息模型。如果你对点对点模型的认识较浅,转载 2017-12-18 20:32:03 · 304 阅读 · 0 评论 -
JMS(四)--Spring和ActiveMQ整合的完整实例
第一篇博文JMS(一)–JMS基本概念,我们介绍了JMS的两种消息模型:点对点和发布订阅模型,以及消息被消费的两个方式:同步和异步,JMS编程模型的对象,最后说了JMS的优点。第二篇博文JMS(二)–ActiveMQ简单介绍以及安装,我们介绍了消息中间件ActiveMQ,安装,启动,以及优缺点。第三篇博文JMS(三)–ActiveMQ简单的HelloWorld实例,我们实现了一种点对点的同转载 2017-12-18 20:43:43 · 330 阅读 · 0 评论 -
ActiveMQ(四)--JMS的可靠性机制-1
消息接收确认JMS消息只有在被确认之后,才认为已经被成功地消费了。消息的成功消费通常包含三个阶段:客户接收消息、客户处理消息和消息被确认。在事务性会话中,当一个事务被提交的时候,确认自动发生。在非事务性会话中,消息何时被确认取决于创建会话时的应答模式(acknowledgement mode)。该参数有以下3个可选值:1.Session.AUTO_ACKNOWLEDGE:当客户成功的从r...原创 2018-08-26 15:51:26 · 331 阅读 · 1 评论 -
ActiveMQ(五)--JMS的可靠性机制-2
消息持久性JMS支持以下两种消息提交模式:PERSISTENT:指示JMS Provider持久保存消息,以保证消息不会因为JMS Provider的失败而丢失。NON_PERSISTENT:不要求JMS Provider持久保存消息。消息优先级可以使用消息优先级来指示JMS Provider首先提交紧急的消息。优先级分10个级别,从0-9十个级别,0-4是普通消息,5-9是加急消...原创 2018-08-26 16:27:42 · 217 阅读 · 0 评论 -
ActiveMQ(六)--PTP模型和Pub/Sub模型
JMS的PTP模型JMS PTP(Point-to-Point)模型定义了客户端如何向队列发送消息,从队列接收消息,以及浏览队列中的消息。PTP模型是基于队列的,生产者发消息到队列,消费者从队列接收消息,队列的存在使得消息的异步传输成为可能。和邮件系统中的邮箱一样,队列可以包含各种消息,JMS Provider提供工具管理队列的创建、删除。PTP的一些特点:1.如果在Session关闭...原创 2018-08-26 21:53:15 · 447 阅读 · 0 评论 -
ActiveMQ(十五)--ActiveMQ消息存储持久化-1
概述ActiveMQ不仅支持persistent和non-persistent两种方式,还支持消息的恢复(recovery)方式。PTPQueue的存储就是一个FIFO的QueuePUB/SUB对于持久化订阅主题,每一个消费者将获得一个消息的复制。topic取走的是一个副本。有效的消息存储ActiveMQ提供了一个插件式的消息存储,类似于消息的多点传播,主要实现...原创 2018-08-27 23:15:29 · 238 阅读 · 0 评论 -
ActiveMQ(十四)--ActiveMQ支持的传输协议
一、连接到ActiveMQConnector:ActiveMQ提供的,用来实现连接通讯的功能。包括:client-tobroker、broker-to-broker。 ActiveMQ允许客户端使用多种协议来连接。(说的就是客户端连接broker)配置Transport Connector的文件在activeMQ安装目录的conf/activemq.xml中的<transportCo...原创 2018-08-27 22:32:37 · 338 阅读 · 0 评论 -
ActiveMQ(十三)--ActiveMQ结合Spring开发最佳实践和建议
1、Camel框架支持大量的企业集成模式,可以大大简化集成组件间的大量服务和复杂的消息流。而Spring框架更注重简单性,仅仅支持基本的最佳实践。2、Spring消息发送的核心架构是JmsTemplate,隔离了像打开、关闭Session和Producer的繁琐操作,因此应用开发人员仅仅需要关注实际的业务逻辑。 但是JmsTemplate损害了ActiveMQ的PooledConnect...原创 2018-08-27 21:10:03 · 275 阅读 · 0 评论