JMS
先来了解下什么叫MOM
MOM(Message-oriented Middleware) 面向消息的中间件 。分布式系统的集成:利用高效可靠的消息传递机制进行平台无关的数据交流,并基于数据通信进行分布式系统的集成。
定义
Java Message Service
是一个java平台关于MOM(消息中间件)的api,用于两个程序之间,或分布式系统中发送消息,进行异步通讯。
优势
会保证消息只被消费一次
是一个异步的消息服务
客户端获取消息的时候,不是主动获取,而是消息会主动发送给客户端
Asynchronous 异步
可靠 Reliable
消费模型
p2p 点对点
publish/subscribe 发布订阅
规范
image
Message组成
Header 消息头
properties 属性 主要是对消息头中属性的补充
body 消息体 用户自定义 包括多种 TextMessage StreamMessage MapMessage ObjectMessage BytesMessage
ActiveMq
优势
加快系统响应 系统分布式解耦,异步并行,加快系统对用户请求的访问速度
降低系统耦合 子系统间通过队列通信,避免相互耦合和影响
数据缓存 消息队列提供亿级的消息堆积能力
activemq就是实现了jms的一种provider
优化 及参数详解
消息堆积
生产者
生产者发送的消息 主要分为两种 PERSISTENT Message(持久化)和NON_PERSISTENT
发送NON_PERSISTENT消息发送方默认使用异步方式。异步发送并非绝对的异步,发送者会在发送一定大小之后等待回执。
消费者
预取数量 prefetchSize
确认机制 ACK 用JMS中的acknowledge来设置
死信
多次消费都失败 那就放入一个异常队列 等待处理
作者:小绵羊你毛不多
链接:https://www.jianshu.com/p/25a1dd1a6540
共同学习,写下你的评论
评论加载中...
作者其他优质文章