ActiveMQ技术学习总结文档Word文档格式.docx

上传人:b****5 文档编号:19190215 上传时间:2023-01-04 格式:DOCX 页数:8 大小:215.12KB
下载 相关 举报
ActiveMQ技术学习总结文档Word文档格式.docx_第1页
第1页 / 共8页
ActiveMQ技术学习总结文档Word文档格式.docx_第2页
第2页 / 共8页
ActiveMQ技术学习总结文档Word文档格式.docx_第3页
第3页 / 共8页
ActiveMQ技术学习总结文档Word文档格式.docx_第4页
第4页 / 共8页
ActiveMQ技术学习总结文档Word文档格式.docx_第5页
第5页 / 共8页
点击查看更多>>
下载资源
资源描述

ActiveMQ技术学习总结文档Word文档格式.docx

《ActiveMQ技术学习总结文档Word文档格式.docx》由会员分享,可在线阅读,更多相关《ActiveMQ技术学习总结文档Word文档格式.docx(8页珍藏版)》请在冰豆网上搜索。

ActiveMQ技术学习总结文档Word文档格式.docx

3.ActiveMQ的特性

⏹多种语言和协议编写客户端。

语言:

Java、C、C++、C#、Ruby、Perl、Python、PHP。

应用协议:

OpenWire、StompREST、WSNotification、XMPP、AMQP

⏹完全支持JMS1.1和J2EE1.4规范(持久化,XA消息,事务)

⏹对Spring的支持,ActiveMQ可以很容易内嵌到使用Spring的系统里面去,而且也支持Spring2.0的特性

⏹通过了常见J2EE服务器(如Geronimo、JBoss4、GlassFish、WebLogic)的测试,其中通过JCA1.5resourceadaptors的配置,可以让ActiveMQ可以自动的部署到任何兼容J2EE1.4商业服务器上

⏹支持多种传送协议:

in-VM、TCP、SSL、NIO、UDP、JGroups、JXTA

⏹支持通过JDBC和journal提供高速的消息持久化

⏹从设计上保证了高性能的集群,客户端-服务器,点对点

⏹支持Ajax

⏹支持与Axis的整合

⏹可以很容易得调用内嵌JMSprovider,进行测试

二、ActiveMQ安装和下载

4.安装

⏹在http:

//activemq.apache.org/download.html下载5.4.0发行包,解压到需要安装ActiveMQ的文件夹,记为/path/to/activemq。

⏹unix环境activemq文件夹需要执行权限,执行如下命令 

chmod-R755/path/to/activemq 

5.启动

⏹window环境运行/path/to/activemq/bin/activemq.bat

⏹unix环境运行/path/to/activemq/bin/activemq

6.测试

ActiveMQ默认使用的TCP连接端口是61616,通过查看该端口的信息可以测试ActiveMQ是否成功启动

⏹window环境运行 

netstat-an|find"

61616"

⏹unix环境运行netstat-an|grep61616

7.监控

ActiveMQ5.0版本默认启动时,启动了内置的jetty服务器,提供一个demo应用和用于监控ActiveMQ的admin应用。

admin:

http:

//127.0.0.1:

8161/admin/

demo:

8161/demo/

三、ActiveMQ基础实例

8.消息生产者

//通过用户密码URL创建接口工厂

ConnectionFactoryfactory=newActiveMQConnectionFactory(

ActiveMQConnection.DEFAULT_USER,

ActiveMQConnection.DEFAULT_PASSWORD,

"

tcp:

//localhost:

);

//通过连接工厂创建一个新的连接

Connectionconnection=factory.createConnection();

//通过连接接口创建一个回话

Sessionsession=connection.createSession(false,Session.AUTO_ACKNOWLEDGE);

//根据回话接口创建有关的目标接口

Destinationdestination=session.createQueue("

MrYan"

//回话接口再根据目标接口创建一个消息生产者接口

MessageProducermessageProducer=session.createProducer(destination);

//调用回话创建一个文本消息

Messagemessage=session.createTextMessage("

Iamveryhappyeither...."

//使用消息生产者接口将消息传送至ActiveMQ服务器

messageProducer.send(message);

session.close();

connection.close();

9.消息消费者

//通过username,password,url创建连接工厂接口

ActiveMQConnectionFactory.DEFAULT_USER,

ActiveMQConnectionFactory.DEFAULT_PASSWORD,

//通过连接工厂创建一个新的连接接口

connection.start();

//通过连接接口创建一个会话接口

Sessionsession=connection.createSession(false,

Session.AUTO_ACKNOWLEDGE);

//会话接口创建有关主题的目标接口

MrLiu"

//会话接口再根据目标接口来创建一个消息消费者接口

MessageConsumerconsumer=session.createConsumer(destination);

//消息消费者接收消息

TextMessagemessage=(TextMessage)consumer.receive();

if(message!

=null){

System.out.println("

收到的消息:

"

+message.getText());

}

10.消息发送流程

然后调用发布接口发布消息,发布过程如下:

11.消息接收流程

四、JMS简介

12.JMS中的概念

✧JMS客户端:

接收或发送消息的java系统

✧JMS消息体:

系统间发送的消息体

✧JMS提供商:

JMS规范实现厂商

✧JMS管理对象:

预先配置好的用于JMS客户端的JMS对象。

如ConnectionFactory跟JMS服务端的连接工厂,Destination接收和发送消息的目标地址等

✧JMSDomain:

JMS定义了两种域模型,一种是PTP(point-to-point)即点对点消息传输模型,一种是pub/sub(publish-subscribe)即发布订阅模型。

PTP通过一个先进先出的queue实现。

很多人在这个PTP概念上有所误解,所谓点对点不是指生产者和消费者只有一个。

PTP如下图所示:

我们可以看到,一个或多个生产者发送消息,消息m2先抵达了queue,然后m1也发出了,并一同存在于一个先进先出的queue里面。

消费者也存在一个或多个,对queue里的消息进行消费。

但消息被随机的一个消费者消费且仅消费一次。

在pub/sub消息模型中,消息被广播给所有订阅者。

如下图:

13.JMS接口

JMS通用接口

JMSPTP接口

JMSpub/sub接口

描述

ConnectionFactory

QueueConnectionFactory

TopicConnectionFactory

创建与JMS服务的连接

Connection

QueueConnection

TopicConnection

JMS服务的连接,可创建Session

Destination

Queue

Topic

发送接收消息的目标,Queue和Topic均可视为一种Destination

Session

QueueSession

TopicSession

MessageProducer

QueueSender

TopicPublisher

消息发送者

MessageConsumer

QueueReceiver、QueueBrowser

TopicSubscriber

消息接收者/浏览者/订阅者

14.JMS接口关系图

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 幼儿教育 > 少儿英语

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1