ActiveMQ简介

ActiveMQ介绍

 ActiveMQ是什么

ActiveMQ是Apache推出的,一款开源的,完全支持JMS1.1和J2EE 1.4规范的JMS Provider实现的消息中间件(Message Oriented Middleware,MOM) 

ActiveMQ能干什么

最主要的功能就是:实现JMS Provider,用来帮助实现高可用、高性能、可伸缩、 易用和安全的企业级面向消息服务的系统 

 ActiveMQ特点

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

支持多种传送协议:in-VM,TCP,SSL,NIO,UDP,JGroups,JXTA

可插拔的体系结构,可以灵活定制,如:消息存储方式、安全管理等 很容易和Application Server集成使用

多种语言和协议编写客户端。语言: Java,C,C++,C#,Ruby,Perl,Python,PHP

从设计上保证了高性能的集群,客户端-服务器,点对点 可以很容易的和Spring结合使用

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

支持与Axis的整合 

消息中间件介绍

MOM基本功能:

将信息以消息的形式,从一个应用程序传送到另一个或多个应用程序。

MOM主要特点:

1:消息异步接受,类似手机短信的行为,消息发送者不需要等待消息接受者的响应,减少软件多系统集成的耦合度;

2:消息可靠接收,确保消息在中间件可靠保存,只有接收方收到后才删除消息,多个消息也 可以组成原子事务

 消息中间件的主要应用场景:

在多个系统间进行整合和通讯的时候,通常会要求:

1:可靠传输,数据不能丢失,有的时候,也会要求不能重复传输;

2:异步传输,否则各个系统同步发送接受数据,互相等待,造成系统瓶颈

目前比较知名的消息中间件: IBM MQSeries BEA WebLogic JMS Server Oracle AQ Tibco SwiftMQ

AcitveMQ:是免费的java实现的消息中间件

ActiveMQ安装和基本使用

下载并安装ActiveMQ服务器端

1:从http://activemq.apache.org/download.html下载最新的ActiveMQ

2:直接解压,然后拷贝到你要安装的位置就好了

主要配置文件分析

1      activemq.xml 就是 spring 配置文件. 其中配置的是 ActiveMQ 应用使用的默认对象组件. transportConnectors 标签 - 配置链      接端口信息的. 其中的端口号 61616 是 ActiveMQ 对 外发布的 tcp 协议访问端口. 就是 java 代码访问 ActiveMQ 时使用的端口. 2      jetty.xml spring 配置文件, 用于配置 jetty 服务器的默认对象组件. jetty 是类似 tomcat 的一个中间件容器. ActiveMQ 默认支持一个网页版的服务查看站点. 可以实现 ActiveMQ 中消息相关数据 的页面查看. 8161 端口, 是 ActiveMQ 网页版管理站点的默认端口. 在 ActiveMQ 网页版管理站点中,需要登录, 默认的用户名和密码都是 admin.

3    users.properties 内容信息: 用户名=密码 是用于配置客户端通过协议访问 ActiveMQ 时,使用的用户名和密码.

启动运行

1:普通启动:到ActiveMQ/bin下面,./activemq start

2:启动并指定日志文件 ./activemq start > /tmp/activemqlog

 检查是否已经启动

ActiveMQ默认采用61616端口提供JMS服务,使用8161端口提供管理控制台服 务,执行以下命令以便检验是否已经成功启动,

ActiveMQ 使用的是 jetty 提供 HTTP 服务.启动稍慢,建议短暂等待再访问测试. 见到如下界面代表服务启动成功。

修改访问端口

ActiveMQ服务:

1:比如查看61616端口是否打开: netstat -an | grep 61616

2:也可以直接查看控制台输出或者日志文件

3:还可以直接访问ActiveMQ的管理页面:http://192.168.1.106:8161/admin/

默认的用户名和密码是admin/admin

 关闭ActiveMQ,

可以用./activemq stop 暴力点的可以用ps-ef| grepactivemq 来得到进程号,然后kill掉 

 

1 Destination 目的地,JMS Provider(消息中间件)负责维护,用于对 Message 进行管理的对象。 MessageProducer 需要指定 Destination 才能发送消息,MessageConsumer 需要指定 Destination 才能接收消息。

2 Producer 消 息 生成 者 (客 户 端、 生 成 消 息 ), 负 责 发送 Message 到 目 的地 。 应 用 接口 为 MessageProducer。在 JMS 规范中,所有的标准定义都在 javax.jms 包中。

3 Consumer【Receiver】 消息消费者(处理消息),负责从目的地中消费【处理|监听|订阅】Message。应用接口 为 MessageConsumer

4 Message 消息(Message),消息封装一次通信的内容。常见类型有:StreamMessage、BytesMessage、 TextMessage、ObjectMessage、MapMessage。

5 ConnectionFactory 链接工厂, 用于创建链接的工厂类型。 注意,不能和 JDBC 中的 ConnectionFactory 混 淆。

6 Connection 链接. 用于建立访问 ActiveMQ 连接的类型, 由链接工厂创建. 注意,不能和 JDBC 中的 Connection 混淆。

7 Session 会话, 一次持久有效有状态的访问. 由链接创建. 是具体操作消息的基础支撑。

8 Queue & Topic Queue 是队列目的地,Topic 是主题目的地。都是 Destination 的子接口。 Queue 特点: 队列中的消息,默认只能由唯一的一个消费者处理。一旦处理消息删除。 Topic 特点:主题中的消息,会发送给所有的消费者同时处理。只有在消息可以重复处 理的业务场景中可使用。

9 PTP Point to Point。点对点消息模型。就是基于 Queue 实现的消息处理方式。

10 PUB & SUB Publish & Subscribe 。消息的发布/订阅模型。是基于 Topic 实现的消息处理方式。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值