java activemq 集群_消息队列--ActiveMQ集群部署

一、activeMQ主要的部署方式?

1,默认的单机部署(kahadb)

activeMQ默认的存储单机模式,如果配置文件不做修改,则默认使用此模式。以本地的kahadb文件的方式进行存储,性能完全依赖本地磁盘,不能提供高可用。

2,基于zookeeper主从模式(levelDB Master/Slave)

基于zookeeper来选举一个master,其他节点作为slave实时同步消息,levelDB会优先采用内存存储消息,异步同步到磁盘。该方式读写性能都较好,写性能能媲美非持久化消息。

优点:实现高可用和数据安全,性能较好。

缺点:由于zookeeper的选举机制,必须要使用2n+1(n>=1)的节点,才能实现高可用。

3,基于共享数据库的主从模式(Shared JDBC Master/Slave)

可以基于常用的mysql,mariadb,oracle等数据库。

每个节点启动都会争抢数据库锁,从而保证master的唯一性,其他节点作为备份,一直等待数据库锁的释放。

因为所有消息读写,其实都是数据库操作,activeMQ节点本身压力很小,性能完全取决于数据库性能。

优点:实现高可用和数据安全,一般两个节点就可以实现高可用。

缺点:性能和稳定性都依赖于数据库。

二、基于zookeeper的activeMQ单台服务器集群部署

1,环境需求

Centos7系统,java环境(jdk),zookeeper安装包,activeMQ安装包

2,部署jdk环境

jdk安装包下载地址:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

83d55fe416930c1e72d4652c480f0b63.png

上面这个是最新版的,我使用的是jdk-8u121-linux-x64.tar.gz。

2.1  上传压缩包到服务器,在当前有压缩包的目录下进行操作。

2.2  创建文件夹

mkdir /application

2.3  解压压缩包(根据你自己的包名进行修改)

tar xf jdk-8u121-linux-x64.tar.gz  -C /application/

2.4  创建软链接(根据你自己的包名进行修改)

ln -s /application/jdk1.8.0_121/ /application/jdk

2.5  配置环境变量

vim /etc/profile

在最后面添加这么几行:

export JAVA_HOME=/application/jdk

export PATH=$JAVA_HOME/bin:

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值