消息中间件初识
程序员文章站
2024-01-01 09:51:40
概述 面向消息的中间件(message-oriented middleware 简称 MOM)支持在分布式系统之间发送和接收消息的软件或硬件基础桥梁。MOM允许应用程序模块分布在各个平台上,并减少了跨多个操作系统和网络协议的开发应用程序的复杂性。中间件创建了一个分布式通信层,将应用程序开发人员与各种 ......
概述
面向消息的中间件(message-oriented middleware 简称 mom)支持在分布式系统之间发送和接收消息的软件或硬件基础桥梁。mom允许应用程序模块分布在各个平台上,并减少了跨多个操作系统和网络协议的开发应用程序的复杂性。中间件创建了一个分布式通信层,将应用程序开发人员与各种操作系统和网络接口的细节隔离开来。跨不同平台和网络的api通常由mom提供。
mom使得一个软件组件可以通过网络来影响另一个组件的行为,而且组件之间可以松散耦合。
简单说:这个中间件提供了良好的接口,使得两边程序通信更加容易,它们不用管对方网络怎么样,系统怎么样等,并且程序之间耦合度低。
常用消息中间件:redis的pub/sub、rabbitmq、rocketmq、zeromq、kafka……
消息队列具有高性能(处理快、响应快),高可用(长期工作),可横向扩展优点(来多几台服务器集群操作,提高性能)。
应用场景
异步通信:a应用请求b应用 ,a--->请求--->消息队列-->响应--->a ,a很快得到响应了,并没有管b有没有拿到消息,反正b自己会去消息中间件拿。
应用解耦:a应用请求b应用,a不会因为b应用崩溃了而得不到响应,它们之间似乎没有关系。
缓解流量高峰:秒杀活动,突然的超高流量可能会压垮应用,先把请求数据扔到消息队列,假如队列溢出了,可以直接抛弃用户请求并返回错误页。
看看应用场景?
看看*?https://en.wikipedia.org/wiki/message-oriented_middleware
推荐阅读
-
66种基于animate.css的CSS消息提示动画效果_html/css_WEB-ITnose
-
详细介绍c#消息提示框messagebox的使用
-
初识MyBatis
-
Paho实现MQTTCient的实现订阅消息
-
Aspose.Email全面支持AMP电子邮件管理!体验更快的消息下载速度
-
使用 PHP 消息队列实现 Android 与 Web 通信
-
PHP微信开发之模板消息回复_php实例
-
来自腾讯的一个不固定高度得消息的滚动特效_javascript技巧
-
RabbitMQ消息队列入门(一)——RabbitMQ消息队列的安装(Windows环境下)
-
PHP使用Redis的List(列表)命令实现消息队列