activemq消息中间件--JMS概述(1)

1 JMS概述

目前现在很多的RPC中间件技术都有如下问题:
(1)同步通信,客户端发出调用请求,必须等待服务端处理完成以后返回结果才能继续执行。
(2)客户和服务对象的生命周期紧密耦合,客户进程和服务进程都必须正常进行,如果由于服务对象的崩溃和网络故障导致客户请求不可达,客户收到异常。
(3)点对点通信,客户的一次调用只发送给某个单独的目标对象。

面向消息的中间件可以解决上述问题。发送者将消息发送给消息服务器,消息服务器将消息存放在若干队列,在合适的时候将消息转发给接收者。这种模式下,发送和接收是异步的,发送者无需等待,二者的生命周期未必相同,发送消息的时候接收者不一定运行,接收消息的时候发送者未必运行;一对多通信,对于一个消息可以有多个接收者。

java消息服务(JMS)定义了java中访问消息中间件的接口。

2 JMS术语

Provider 生产者
consumer 消费者
PTP 点对点的消息模型
Pub/Sub 发布/订阅的消息模型
Queue 队列目标
Topic 主题目标
ConnectionFactory 连接工厂,JMS用它创建连接
Connection JMS客户端到JMS Provider的连接
Destination 消息的目的地
Session 会话 一个发送或者接收消息的线程

3 消息格式定义

StreamMessage java原始值的数据流
MapMessage 一套名称-值对
TextMessage 一个字符串对象
ObjectMessage 一个序列化的java对象
BytesMessage 一个未解释字节的数据流

4 几种消息中间件

1 rocketMq(商用)
2 kafka
优点:性能和吞吐量非常高,它是采用空中接力不落地设计原则,也就是说将消息放在内存中,kafka并不采用持久化方式(数据落地方式,刷盘方式)来保证数据的可靠性,也就是说数据有可能会丢失。
但是kafka采用分布式,主从多副本保证数据的可靠性。
适合于大数据的数据分析和数据挖掘。
3 activeMq
4 rabbitMQ

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

技术闲聊DD

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值