[关闭]
@wxf 2018-05-23T08:19:57.000000Z 字数 2519 阅读 1136

消息中间件

Java工具箱


课程目标:
1.入门
①、为什么需要使用消息中间件
②、消息中间件概述
③、JMS规范
④、JMS代码演练
2.拓展
①、ActiveMQ集群配置
②、消息中间件在大型系统中的最佳实践
③、使用其他消息中间件

为什么需要使用消息中间件

消息中间件概述

  1. 什么是消息中间件?
    关注于数据的发送和接受,利用高效可靠的异步消息传输机制集成分布式系统。
  2. 什么是JMS?
    Java消息服务(Java Message Service)即JMS,是一个Java平台中关于面向消息中间件的API,用于在两个应用程序之间,或分布式系统中发送消息,进行异步通信。
  3. 什么是AMQP?
    AMQP是一个提供统一消息服务的应用层标准协议。基于此协议的客户端和消息中间件客传递消息,并不受客户端/中间件不同产品,不同开发语言等条件的限制。
  4. 常见消息中间件对比
  ActiveMQ RabbitMQ Kafka
跨语言 支持(Java优先) 语言无关 支持(Java优先)
支持协议 OpenWire, Stopmp, XMPP, AMQP AMQP
优点 遵循JMS规范安装部署方便 继承Erlang天生的并发性,最初用于金融行业,稳定性,安全性有保障 依赖zk,可动态扩展节点高性能、高吞吐量、无限扩容消息可指定追溯
缺点 会莫名丢失消息 Erlang语言难度大,不支持动态扩展 严格的顺序机制。不支持消息优先级、不支持标准的消息协议、不利于平台迁移
综合评价 适合中小企业级消息应用场景,不适合上千个队列的应用场景 适合对稳定性要求较高的企业级应用 一般应用在大数据日志处理或对实时性,可靠性要求较低的场景使用

JMS规范

JMS消息模式

JMS编码接口

使用Spring集成JMS连接ActiveMQ

ActiveMQ集群配置

为什么要对中间件集群?

集群方式

客户端集群配置

实现ActiveMQ集群配置时,客户端同样也需要配置

Broker Cluster集群配置

Master Slave集群配置

三台服务器的完美集群方案

image_1c184aner1i4p4rq1scrvj218o21j.png-42.6kB
下面我们将针对上面的集群方案进行配置。

ActiveMQ集群配置方案实践

配置方案图:
image_1c1863cqm13tq1kh17up1ocup220.png-65.1kB

相关推荐:【消息队列 MQ 专栏】RabbitMQ


[1] 网络连接器 主要用于配置ActiveMQ服务器与服务器之间的网络通信方式,用于服务器透传消息。
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注