分布式-信息方式-ActiveMQ基础
ActiveMQ简介
ActiveMQ是什么
ActiveMQ是Apache推出的,一款开源全支持JMS.1和J2EE1.4范的JMS Provider实现的信息中间件。
(message oriented Middleware, MOM)
■ ActiveMQ能干什么
最主要的功能就是: 实现JMS Provider,用来帮助实现高可用、高性能、可伸缩、易用和安全的全业级面向消息服务的系统
■ ActiveD特点
完全支持JM81.1和J2EE1.4規范(持久化,XA消息,事务)
支持多种传送协议:in-VM,TcP,SSL,NIO,UDF, JGroups,JXTA
可插拔的体系结构,可以灵活定制,如:消息存储方式、安全管理等
很容易和 Application Server集成使用
多种语言和协议编写客户端。语言:Java,C,C++,C#,Ruby,Per1, Python,PHP
从设计上保证了高性能的集群,客户端-服务器,点对点
可以很容易的和 Spring结合使用
文持通过JDBC和 journal提供高速的消息持久化
支持与Axjs的整合
消息中间件
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/bin下面。 ./ active start
2:启动并指定日志文件 ./ activemq start>/tmp/ activemqlog
检查是否已经启动
ActiveMQ默认采用61616端口提供JMS服务,使用8161端口提供管理控制台服
务,执行以下命令以便检验是否已经成功启动 ActiveMQ服务:
1:比如查看61616端口是否打开: netstat -an|grep 61616
2:也可以直接查看控制台输出或者日志文件
3:还可以直接访问 ActiveMQ的管理页面:http://192.168.1.106:8161/ admin/
默认的用户名和密码是 admin/ admin
■关闭 Active,可以用 ./ activemq stop
暴力点的可以用ps -ef|grep activemq 来得到进程号,然后kill掉
ActiveMQ_Windows版本的安装部署
1, 保证电脑上安装了jdk6以上版本的java,并配置了好环境变量 ;
2, 官方下载地址:http://activemq.apache.org/download-archives.html ,这里使用 5.8.0
3, 解压缩下载好的 apache-activemq-5.8.0-bin.zip .

4, bin目录下由win32/ win64可以供选择.

5, 我这里是进入 win64 ,运行activemq.bat 脚本

6, ActiveMQ默认启动到8161端口,启动完了后在浏览器地址栏输入:http://localhost:8161/admin要求输入用户名密码,默认用户名密码为admin、admin,后便可看到如下图的ActiveMQ控制台界面了

ActiveMQ启动报错:java.lang.IllegalStateException: LifecycleProcessor not initialized - call 'refresh' be
二、解决方法
查看data目录下的日志
1发现一个关键字: JVM_Bind
java.io.IOException: Transport Connector could not be registered in JMX: java.io.IOException: Failed to bind to server socket: amqp://0.0.0.0:5672?maximumConnections=1000&wireFormat.maxFrameSize=104857600 due to: java.net.BindException: Address already in use: JVM_Bind
1.端口冲突。。然后通过TCPVIEW关闭该进程就行了。
2.修改activemq.xml中的端口
分布式-信息方式-ActiveMQ基础的更多相关文章
- 分布式-信息方式-ActiveMQ的Message dispatch高级特性之(指针) Message cursors
Message dispatch高级特性之 Message cursors概述 ActiveMQ发送持久消息的典型处现方式是:当消息的消费者准备就绪时,消息发送系统把存储的 消息 ...
- 分布式-信息方式-ActiveMQ的Destination高级特性3
虚拟destination用来创建逻辑destination,客户端可以通过它来生产和消费消息,它会把消息映射到物理destination. ActiveMQ支持2种方式: 1:虚拟主题(Virtua ...
- 分布式-信息方式-ActiveMQ的Destination高级特性1
ActiveMQ的Destination高级特性 Destination高级特性----->Composite Destinations 组合队列Composite Destinations : ...
- 分布式-信息方式-ActiveMQ的集群
ActiveMQ的集群Queue consumer clusters ActiveMQ支持 Consumer对消息高可靠性的负载平衡消费,如果一个 Consumer死掉,该消 ...
- 分布式-信息方式-ActiveMQ静态网络连接的容错
容错的链接Failover Protocol 前面讲述的都是client配置链接到指定的 broker上.但是,如果 Broker的链接失败怎么办呢?此时, Client有两个选项:要么立刻死掉,要么 ...
- 分布式-信息方式-ActiveMQ的消息存储持久化
ActiveMQ的消息存储持久化■概述ActiveMQ不仅支持 persistent和 non-persistent两种方式,还支持消息的恢复( recovery)方式PTPQueue的存储是很简单的 ...
- 分布式-信息方式-ActiveMQ的Destination高级特性2
使用filtered destinations,在xml配置如下: <destinationInterceptors> <virtualDestinationInterceptor& ...
- 分布式-信息方式-ActiveMQ的动态网络链接
ActiveMQ的动态网络链接多播协议 multicast ActiveMQ使用 Multicast协议将一个 Service和其他的 Broker的 Service连接起来,IPmulticast是 ...
- 分布式-信息方式-ActiveMQ静态网络连接信息回流功能
“丢失”的消息 有这样的场景, broker1和 broker2通过 netwoskconnector连接,一些 consumers连接到 broker1,消费 broker2上的消息.消息先被 br ...
随机推荐
- Ruby学习中(哈希变量/python的字典, 简单的类型转换)
一. 哈希变量(相当于Python中的字典) 详情参看:https://www.runoob.com/ruby/ruby-hash.html 1.值得注意的 (1). 创建Hash时需注意 # 创建一 ...
- vue-router动态路由设置参数可选
在日常工作中,我们需要将匹配到的所有路由,映射到一个组件上. 如下代码想要达到的效果: 不传page和id,则映射到user默认list页面 传page和id,根据page不同,显示不同的页面 问题 ...
- redis 学习(二)-- 通用命令
redis 学习(二)-- 通用命令 1. keys pattern 含义:查找所有符合给定模式(pattern)的key 命令 含义 keys * 遍历所有 key keys he[h-l]* 遍历 ...
- [Nest] 03.nest之提供者 provider
提供者 provider 提供程序是 Nest 的一个基本概念.许多基本的 Nest 类可能被视为提供者 - service,repository, factory, helper 等等. 他们都可以 ...
- div+css布局教程(1)
margin:Margin属性用于设置两个元素之间的距离. 后面如果只有两个参数的话,第一个表示top和bottom,第二个表示left和right因为0 auto,表示上下边界为0,左右则根据宽度自 ...
- 无障碍开发(三)之ARIA aria-***属性值
aria-***属性值
- O003、准备 KVM 实验环境
参考https://www.cnblogs.com/CloudMan6/p/5240770.html KVM 是 OpenStack 使用的最广泛的Hypervisor,本节介绍如何搭建 KVM ...
- 关于CSRF 和 csrftoken
CSRF 虽然利用了session验证机制的漏洞,一般使用加密token的方式防御,但是其本身和session以及JWT token没有直接联系. 描述 CSRF利用用户正常登录产生的cookie,利 ...
- 关于redis的几件小事(六)redis的持久化
1.redis持久化的意义 redis持久化的意义,在于 故障恢复 . 如果没有对数据进行持久化,那么如果redis遇到灾难性的故障,就会丢失所有的数据. 如果通过redis的持久化机制将数据持久化到 ...
- 移动端布局-rem
created(){ // 设置根字号 // 屏幕宽度 setHTML(); // addEventListener()不冲突 window.addEventListener('resize', se ...