1 Star 0 Fork 0

abel / activemq

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

activemq

项目介绍

activemq 项目实战

软件架构

项目中需要用到activeMQ 下载地址:http://activemq.apache.org/download.html

安装教程

需要安装jdk环境 activeMQ免安装下载完成后在 ./bin/activemq start :启动服务 ./bin/activemq stop :停止服务 ./bin/activemq restart :重启 服务

使用说明

com.abel.main 包下的类 简单demo 测试成功即可

transcation 包下的是事务提交数据

onmessage 包下的监听消息队列,有消息进来就可以接收到

publis.subscribe 发布/订阅模式

activeMQ 安全认证 : 指定用户进行数据发布和监听

  • ./conf/activeMQ 中的broker标签 中增加
  • ./conf/login.config 中设置用户和租信息 activemq { org.apache.activemq.jaas.PropertiesLoginModule required org.apache.activemq.jaas.properties.user="users.properties" org.apache.activemq.jaas.properties.group="groups.properties"; };
  • ./conf/users.properties 中设置用户

用户名=密码

  • ./conf/groups.properties

组名=用户名,用户名1

persistence 持久化测试

  • kahadb方式
    • 是ActiveMQ默认的持久化策略。kahadb是一个文件型数据库。是使用内存+文件保证数据的持久化的。kahadb可以限制每个数据文件的大小。不代表总计数据容量
    • 特性是 1、日志形式存储消息;2、消息索引以B-Tree结构存储,可以快速更新;3、完全支持JMS事务;4、支持多种恢复机制;
  • jdbc 模式
    • ./conf/activemq.xml broker标签中的persistenceAdapter 由默认kahadb 改为persistenceAdapter jdbc 持久化标签 dataSource指定持久化数据库的bean,createTablesOnStartup是否在启动的时候创建数据表,默认值是true,这样每次启动都会去创建数据表了,一般是第一次启动的时候设置为true,之后改成false。
    • 标签之外增加数据库配置内容
    * 说明1:配置成功后可能出现缺包的状况 需要增加 mysql驱动及jdbc连接池的jar包 commons-pool、commons-dbcp、mysql-connector-java * 说明2: 创建数据库的时候数据库的的字符集为:latin1 否则activemq_acks 表无法初始化创建

springmvc 整合 模块mvnproducer 发送消息 mvcconsumer 接受消息并处理

#* colony activeMQ 主从

  • zk 集群安装步骤
    • zookeeper 免安装 减压完成后需要在里面创建一个myid文件,里面设置zk的编号(智能是大与等于1的自然数) echo 1 >> myid
    • conf/zoo_sample.cfg 属于模板文件,需要重新复制一个zoo.cfg文件 zk默认访问的是此文件,修改此文件:
      • 1、dataDir: zk文件路径/data
      • 2、clientPort: 多个zk的端口设置的不一样
      • 3、server.编号=IP:投票端口:选举端口 投票端口: 用于决定正在运行的主机是否宕机. 选举端口: 用于决定哪一个Zookeeper服务作为主机 多个zk配置多个server 配置应该一样
    • 启动所有zk zk/bin/zkServer.sh start
    • 查看zk 状态 zk/bin/zkServer.sh status 查看 Mode: leader 表示主机 Mode: follower 表示从机
  • activeMQ 集群安装步骤
    • 修改多个jetty.xml 的端口号不一样
    • 修改activemq.xml 中的标签broker中的brokerName属性的名称设为一致的
    • 修改持久化配置信息 broker 标签中的 persistenceAdapter 信息
      • replicas属性代表当前主从模型中的节点数量
      • bind属性中的端口为主从实例之间的通讯端口。代表当前实例对外开放端口是什么,三个实例分别使用62626、62627、62628端口
      • zkAddress属性代表ZooKeeper安装位置,安装具体情况设置。
      • zkPath是ActiveMQ主从信息保存到ZooKeeper中的什么目录内
      • hostname为ActiveMQ实例安装Linux的主机名,可以在/etc/hosts配置文件中设置。设置格式为:IP 主机名。 如: 127.0.0.1 mq-server
      • <replicatedLevelDB
      •   directory="${activemq.data}/levelDB"
      •   replicas="3"
      •   bind="tcp://0.0.0.0:62626"
      •   zkAddress="192.168.26.50:2181,192.168.26.50:2182,192.168.26.50:2183"
      •   zkPath="/activemq/leveldb-stores"
      •   hostname="mq-server"
      •   />
    • 修改activemq.xml对外提供的服务端口。原默认端口为61616
    • 查询activemq中的主从服务
      • 进入zk客户端进行查看 zk/bin/zkCli.sh
      • ls /activemq/leveldb-stores/ 有几个activeMQ 下面就会显示几个
      • get /activemq/leveldb-stores/00000000004 其中属性 elected:000000 表示主 selected:null 表示从

参与贡献

码云特技

空文件

简介

activemq 项目实战 展开 收起
Java
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Java
1
https://gitee.com/abel-he/activemq.git
git@gitee.com:abel-he/activemq.git
abel-he
activemq
activemq
master

搜索帮助

344bd9b3 5694891 D2dac590 5694891