zookeeper + LevelDB + ActiveMQ实现消息队列高可用

      通过集群实现消息队列高可用。

      消息队列在项目中存储订单、邮件通知、数据分发等重要信息,故对消息队列稳定可用性有高要求。

      现在通过zookeeper选取activemq leader的形式实现当某个activemq节点出问题时,保证系统的可用性。

zookeeper做为服务选取器来选择activemq作为master。

     开发环境将zoopkeeper zoo_sample.cfg拷贝并修改文件名称为zoo.cfg。

     activemq 配置禁用kahadb启用LevelDB 其中 zkAddress="127.0.0.1:2181" 为上边zoopkeeper 配置

  <!-- 不采用kahadb方式
  <persistenceAdapter>
  <kahaDB directory="${activemq.data}/kahadb"/>
  </persistenceAdapter>
  -->
  <persistenceAdapter> 
  <replicatedLevelDB 
  directory="${activemq.data}/leveldb" 
  replicas="3" 
  bind="tcp://0.0.0.0:0" 
 zkAddress="127.0.0.1:2181" 
  hostname="127.0.0.1" 
 sync="local_disk" 
 zkPath="/activemq/leveldb-stores" 
 /> 
		</persistenceAdapter>

如开发机器都在同一台机器可以修改下文端口来实现多个activemq在同一台电脑上启动

 <transportConnectors>
            <!-- DOS protection, limit concurrent connections to 1000 and frame size to 100MB -->
            <transportConnector name="openwire" uri="tcp://0.0.0.0:61617?maximumConnections=1000&amp;wireFormat.maxFrameSize=104857600"/>
            <transportConnector name="amqp" uri="amqp://0.0.0.0:5673?maximumConnections=1000&amp;wireFormat.maxFrameSize=104857600"/>
            <transportConnector name="stomp" uri="stomp://0.0.0.0:61614?maximumConnections=1000&amp;wireFormat.maxFrameSize=104857600"/>
            <transportConnector name="mqtt" uri="mqtt://0.0.0.0:1884?maximumConnections=1000&amp;wireFormat.maxFrameSize=104857600"/>
            <transportConnector name="ws" uri="ws://0.0.0.0:61615?maximumConnections=1000&amp;wireFormat.maxFrameSize=104857600"/>
        </transportConnectors>

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏三丰SanFeng

zookeeper监控告警

一、ZooKeeper简介 ZooKeeper作为分布式系统中重要的组件,目前在业界使用越来越广泛,ZooKeeper的使用场景非常多,以下是几种典型的应用场景...

3177
来自专栏北京马哥教育

超详细!使用 LVS 实现负载均衡原理及安装配置详解

负载均衡集群是 load balance 集群的简写,翻译成中文就是负载均衡集群。常用的负载均衡开源软件有nginx、lvs、haproxy,商业的硬件负载均衡...

29910
来自专栏州的先生

利用Python进行Web渗透测试(四):HTTP协议基础

1012
来自专栏IT可乐

Redis详解(二)------ redis的配置文件介绍

  上一篇博客我们介绍了如何安装Redis,在Redis的解压目录下有个很重要的配置文件 redis.conf (/opt/redis-4.0.9目录下),关于...

1070
来自专栏七夜安全博客

无线安全专题_攻击篇--MAC泛洪攻击

1164
来自专栏阮一峰的网络日志

SSL延迟有多大?

据说,Netscape公司当年设计SSL协议的时候,有人提过,将互联网所有链接都变成HTTPs开头的加密链接。 这个建议没有得到采纳,原因之一是HTTPs链接比...

2657
来自专栏王小雷

Docker网络管理机制实例解析+创建自己Docker网络

实例解析Docker网络管理机制(bridge network,overlay network),介绍Docker默认的网络方式,并创建自己的网络桥接方式,将开...

2249
来自专栏程序员与猫

从输入url到页面返回到底发生了什么

1. 前言 Google应该是开发者平日里用得最多的网站之一,今早笔者在浏览器地址栏里键入www.google.com的时候,突然想了解下这背后的网络通信过程究...

2018
来自专栏纯洁的微笑

Eureka 虽然闭源了,但注册中心还有更多选择:Consul 使用详解

在上个月我们知道 Eureka 2.0 闭源了,但其实对国内的用户影响甚小,一方面国内大都使用的是 Eureka 1.X 系列,另一方面

1403
来自专栏程序之美

第一节 netty概述

382

扫码关注云+社区