【大纲】ActiveMQ培训
入门
-架构
-下载与安装
-多实例安装
-安装脚本简析
-配置
-工具
--WebConsole
--JMX
--activemq
小结
特性(核心)
-Message 消息
--消息属性
--通知消息
--Blob消息
--延迟和调度消息
-Producer 生产者
--同步和异步发送
--生产者流控
-Broker
--推拉模式
--消息确认
--顺序性
-Consumer 消费者
--派发消息策略
--优先级
--独占型消费者
--消息分组
--消息重发与死信队列
--持久化订阅
--订阅恢复策略
--选择器
--慢消费者
-Destination 目的地(主题和队列)
--通配
--配置策略
--随系统启动
--组合目的地
--镜像队列
--虚拟目的地
--非活跃
Persistence 持久化
-KahaDB
-其他
-灾备
-拦截器
-安全
-小结
集群
-Master/Slave 主从
--不共享存储
--共享存储
---共享文件
---共享数据库
--Failover 故障转移分析
--使用场景
-Networks of Brokers 桥接转发
特性
-Discovery 节点发现
-Message 消息流向
-Reliability 可靠性
-Ordering 顺序性
-Stuck Messages 消息堵塞
使用场景
-ActiveMQ Artemis 集群 (新版本的ActiveMQ)
-Server Discovery 节点发现
-Server-Side Message Load Balancing 消息负载均衡
-Client-Side Load balancing 客户端负载均衡
-Cluster topologies 集群拓扑结构
-High Availability and Failover 高可用和故障切换
实验
-主从共享数据库集群搭建与failover分析
-Networks of Brokers搭建
管理和监控
-简介
-管理
--用户
--Web端
--activemq脚本
--JMX
监控
-ActiveMQ内部指标
-关键监控指标
--Broker健康
--Topic/Queue
--Message积压
监控方式
--定时脚本
--监控框架集成
实验
-配置和监控关键指标
-小结
性能
-简介
-外部因素
--网络、硬件、系统、应用、磁盘、内存
内部因素
-JVM
-Producer 生产端
-Consumer 消费端
-Broker
-Message 消息
实验
-评估系统的吞吐量
-小结
常见问题与实践建议
-消息大小
--尽量避免大消息;
-消息持久化
--根据实际场景选择合适的持久化存储;
Delivery Mode
-PERSISTENT 与 NON_PERSISTENT选择,速度和丢失
Acknowledge 消息确认
-AUTO_ACKNOWLEDGE模式;
消息积压
-解决:消息过期、DLQ 死信队列 、 积压监控
-消息事务 Transaction
--Producer使用Transaction批量提交消息
Transport Connector
-使用nio模型提高连接性能;其他
消息丢失
-NON_PERSISTENT
-消息过期
-Broker进程退出
消息发送优化
-异步发送;Producer Flow Contro 流控;
消息消费优化
-预取消息;配置Slow Customer;
管控Queue/Topic创建
-规划和限定Queue/Topic创建权限,避免Queue/Topic数量失控;
Transport
-使用NIO减少线程数量