(具体代码实现在上一篇Jms中)
1.1 什么是JMS
java message service (java消息服务) jms是jdk 底层定义的规范 各大厂商都要实现这个规范技术
1.2 Jms的作用
在soa分布式架构系统中 或者企业中多个项目中 进行多个系统的异步传输
同步技术:
dubbo 同步技术 实用性高 controller---->service—>调用就执行
异步技术:
mq消息中间件(jms) 是一种异步技术 消息发送方 将消息发送给消息服务器----》未必处理
什么时候处理 主要看消息服务器是否繁忙 进入队列 先进先出 实时性不高
1.3 使用的场景
使用消息服务器当做大的队列使用 先进先出来处理高并发写入操作
使用消息服务器可以将业务系统的串行执行改为并行执行 处理效率高
1.4同类技术
ActiveMQ: 是apache 比较老牌的消息中间件 比较均衡 既不是最安全的 也不是最快
RabbitMQ 阿里巴巴的消息中间件 适合金融项目 保证不丢失数据
ZeroMQ 历史上最快的消息队列系统
Kafka 是apache 的一个子项目 高吞吐 完全的分布式系统 适合存储海量的数据
1.5 JMS支持的消息类型
TextMessage 字符串对象
MapMessage 一套名称—键值对
ObjectMessage-----java对象(必须是序列化)
BytesMessages----字节数据流
StreamMessage-----java原始的数据流
1.6 如何使用
点对点的发送方式 :一个发送一个接收 也可以是多个发送方 一个接收方(主要看接收方 一个)
订阅发布模式:一个发送方 多个接收方 主要看的是接收方(多个)