JAVA使用指南:RabbitMQ

消息中间件利用高效可靠的消息传递机制进行平台无关的数据交流,并基于数据通信来进行分布式系统的集成。通过提供消息传递和消息排队模型,它可以在分布式环境下扩展进程间的通信。对于消息中间件,常见角色大致也就有 Producer(生产者)、Consumer(消费者)。

常见的消息中间件产品:

1). ActiveMQ

ActiveMQ 是 Apache 出品,最流行的,能力强劲的开源消息总线。ActiveMQ 是一个完全支持 JMS1.1 和 J2EE 1.4 规范的 JMS Provider 实现。我们在本次课程中介绍 ActiveMQ 的使用。

2). RabbitMQ

AMQP 协议的领导实现,支持多种场景。淘宝的 MySQL 集群内部有使用它进行通讯,

OpenStack 开源云平台的通信组件,最先在金融行业得到运用。

3). ZeroMQ

添加笔者微信YDT787,有更多整理好的java微服务笔记、源码、精选面试题!

史上最快的消息队列系统

4). Kafka

Apache 下的一个子项目 。特点:高吞吐,在一台普通的服务器上既可以达到 10W/s

的吞吐速率;完全的分布式系统。适合处理海量数据

1). 解耦 :中间件中的生产者只管发送消息 , 消费者只要从队列当中获取消息进行消费就可以 , 从而来实现业务的解耦 .

2). 冗余存储 : 有些情况下,处理数据的过程会失败。消息中间件可以把数据进行持久化直 到它们已经被完全处理,通过这一方式规避了数据丢失风险。在把一个消息从消息中间件中删 除之前,需要你的处理系统明确地指出该消息己经被处理完成,从而确保你的数据被安全地保 存直到你使用完毕。

3). 可恢复性: 当系统一部分组件失效时,不会影响到整个系统 。 消息中间件降低了进程间的 稿合度,所以即使一个处理消息的进程挂掉,加入消息中间件中的消息仍然可以在系统恢复后 进行处理 。

4). 顺序保证: 在大多数使用场景下,数据处理的顺序很重要,大部分消息中间件支持一定程 度上的顺序性。

5). 缓冲: 在任何重要的系统中,都会存在需要不同处理时间的元素。消息中间件通过一个缓 冲层来帮助任务最高效率地执行,写入消息中间件的处理会尽可能快速 。

6). 异步通信: 在很多时候应用不想也不需要立即处理消息 。 消息中间件提供了异步处理机制

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值