为了账号安全,请及时绑定邮箱和手机立即绑定

RabitMQ 简介

标签:
Java

每日一句

The secret of being miserable is to have leisure to bother about whether you are happy or not.
痛苦的秘密在于有闲工夫担心自己是否幸福。

概述

RabbitMQ是实现了高级消息队列协议(Advanced Message Queueing Protocol , AMQP)的开源消息代理软件(亦称面向消息的中间件)。

什么是消息中间件

定义:支持在分布式系统中发送和接受消息的硬件或软件基础设施

消息中间件应用场景

消息中间件解决的就是分布式系统之间消息传递的问题。

简单概括一下消息中间件的应用场景大致如下:

  • 业务解耦:交易系统不需要知道短信通知服务的存在,只需要发布消息
  • 削峰填谷:比如上游系统的吞吐能力高于下游系统,在流量洪峰时可能会冲垮下游系统,消息中间件可以在峰值时堆积消息,而在峰值过去后下游系统慢慢消费消息解决流量洪峰的问题
  • 事件驱动:系统与系统之间可以通过消息传递的形式驱动业务,以流式的模型处理

rabbitMQ的起源

RabbitMQ 是采用 Erlang 语言实现 AMQP(Advanced Message Queuing Protocol)高级消息队列协议 的消息中间件,用于在 分布式系统中存储转发消息

RabbitMQ 正是由于它优越的表现被越来越多人认可。具体特点可以概括为以下几点:

  • 可靠性:持久化、传输确认发布确认等。
  • 灵活的路由:在消息进入队列之前,通过 交换器路由 消息
  • 扩展性:多个 RabbitMQ 节点可以组成一个集群,也可以动态扩展集群节点。
  • 高可用性:队列 可以在集群中的机器上设置 镜像,使得在部分节点出现问题的情况下,队列仍然可用
  • 多种协议:原生支持 AMQP 协议,还支持 STOMP、MQTT 等多种消息中间件协议
  • 多语言客户端:支持常用语言客户端。如:Java、Python、Ruby、PHP、C#、JavaScript
  • 管理界面:提供了一个易用的用户界面,使得用户可以 监控和管理消息、集群中的节点
  • 插件机制:提供了许多插件,以实现从多方面进行扩展,也可以自己编写插件。

美文佳句

在薄情的世界里,每个人都来去匆匆,没有谁会永远陪伴在你身边,没有人会时刻对你关怀备至,体贴入微,倒不如学会好好爱自己,不辜负余生。

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消