
ActiveMQ学习
文章平均质量分 62
ActiveMQ是Apache研发的开放源代码消息中间件。ActiveMQ是一个纯Java程序。
自由与束缚JavaJavaScript
这个作者很懒,什么都没留下…
展开
-
001_消息中间件
1. 消息中间件是基于队列与消息传递技术, 在网络环境中为应用系统提供同步或异步、可靠的消息传输的支撑性软件系统。2. 消息中间件利用高效可靠的消息传递机制进行平台无关的数据交流, 并基于数据通信来进行分布式系统的集成。通过提供消息传递和消息排队模型, 它可以在分布式环境下扩展进程间的通信。3. 消息中间件适用于需要可靠的数据传送的分布式环境。采用消息中间件机制的系统中, 不同的对象之间通过传递消息来激活对方的事件, 完成相应的操作。发送者将消息发送给消息服务器, 消息服务器将消息存放在若干队列中,原创 2021-03-26 20:39:17 · 123 阅读 · 0 评论 -
002_JMS
1. JMS即Java消息服务(Java Message Service)应用程序接口, 是一个Java平台中关于面向消息中间件(Message Oriented Middleware)的API, 用于在两个应用程序之间或分布式系统中发送消息, 进行异步通信。2. JMS是一种与厂商无关的API, 用来访问收发系统消息, 它类似于JDBC(Java Database Connectivity)。这里JDBC是可以用来访问许多不同关系数据库的API, 而JMS则提供同样与厂商无关的访问方法, 以访问消息收原创 2021-03-26 21:56:01 · 166 阅读 · 0 评论 -
003_ActiveMQ管理后台
1. Apache ActiveMQ是最流行的开源、多协议、基于Java的消息传递服务。ActiveMQ是一个完全支持JMS1.1和J2EE1.4规范的JMS Provider实现, 它非常快速, 支持多种语言(C、C++、Python、.Net等)的客户端和协议, 而且可以非常容易的嵌入到企业的应用环境中, 并有许多高级功能。2. Apache ActiveMQ官方网址: http://activemq.apache.org/3. 目前Apache ActiveMQ有2个版本ActiveMQ原创 2021-03-28 22:15:12 · 1515 阅读 · 0 评论 -
004_Queue消息模式发送文本消息
1. 新建一个名为JMSActiveMQTextMessage的Java项目, 同时拷入相关jar包2. 编辑QueueTextMessageProducer.javapackage com.jmsapp.qtm;import javax.jms.Connection;import javax.jms.ConnectionFactory;import javax.jms.Destination;import javax.jms.JMSException;import javax.j原创 2021-03-28 22:18:58 · 200 阅读 · 0 评论 -
005_Queue消息模式发送字节消息
1. 新建一个名为JMSActiveMQBytesMessage的Java项目, 同时拷入相关jar包2. 编辑QueueBytesMessageProducer.javapackage com.jms.activemq.qbm;import javax.jms.BytesMessage;import javax.jms.JMSException;import javax.jms.Queue;import javax.jms.QueueConnection;import javax原创 2021-03-28 22:23:41 · 163 阅读 · 0 评论 -
006_Topic消息模式发送对象消息
1. 新建一个名为JMSActiveMQObjectMessage的Java项目, 同时拷入相关jar包2. 编辑User.javapackage com.jms.activemq.tom;import java.io.Serializable;public class User implements Serializable { private static final long serialVersionUID = 1L; private String userName;原创 2021-03-28 22:26:45 · 167 阅读 · 0 评论 -
007_JMS中的持久订阅
1. 持久订阅时, 客户端需要首先向JMS提供者注册一个表面自己身份的id(clientId)。这样当咱们这个客户端处于离线时, JMS提供者会为这个客户端保存所有发送到主题的消息。当客户端再次连接到JMS提供者时, JMS提供者根据这个客户端id, 把消息发送给它。2. 创建持久订阅必须设置一个客户端id, 不然会报如下错误3. 设置客户端id3.1. 设置客户端id要紧跟在创建连接之后// 1. 创建一个连接工厂TopicConnectionFactory cf = new Ac原创 2021-03-28 22:31:14 · 511 阅读 · 0 评论 -
008_Queue消息模式发送映射消息
1. 新建一个名为JMSActiveMQMapMessage的Java项目, 同时拷入相关jar包2. 编辑QueueMapMessageProducer.javapackage com.jms.activemq.qmm;import javax.jms.JMSException;import javax.jms.MapMessage;import javax.jms.Queue;import javax.jms.QueueConnection;import javax.jms.Q原创 2021-03-28 22:33:36 · 167 阅读 · 0 评论 -
009_JMS中的事务
1. 本地事务 1.1. 在一个JMS客户端, 可以使用本地事务来组合消息的发送和接收。JMS Session接口提供了commit和rollback方法。事务提交意味着生产的所有消息被发送, 消费的所有消息被确认; 事务回滚意味着生产的所有消息被销毁, 消费的所有消息被恢复并重新提交, 除非它们已经过期。 1.2. 事务性的会话总是牵涉到事务处理中, commit或rollback方法一旦被调用, 一个事务就结束了, 而另一个事务被开始。关闭事务性会话将回滚其中的事务。 ...原创 2021-03-29 16:14:48 · 378 阅读 · 0 评论 -
010_JMS消息选择器
1. 表达式定义的一些重要的规则1.1. 表达式的操作符不区分大小写, 但通常约定为大写。1.2. 表达式的变量名跟普通Java变量名的命名规则一致, 区分大小写, 如articleType和articletype是两个不同的变量。1.3. 表达式的变量名必须是标准的消息头名或者已存在的属性名, 否则对应的值会为NULL。1.4. 表达式的值不会进行类型转化, 即假设有message.setStringProperty("version","1"); 那么表达式"version=1"对于m.原创 2021-03-29 16:17:07 · 135 阅读 · 0 评论