首页天道酬勤nginx是一种消息队列中间件(消息中间件和消息队列)

nginx是一种消息队列中间件(消息中间件和消息队列)

admin 02-14 00:53 258次浏览

1.中间件

首先说明消息中间件。 什么是中间件?

我的理解是,APP应用程序可以帮助其他APP应用程序、硬件、操作系统、网络、交互或通信的软件。

目的是将业务与底层逻辑分开。

属于中间件的领域还很广泛,如Redis、Zookeeper和Memcached。 实际上,对于体系结构体系内的中间件,他既没有涉及具体的业务逻辑,也没有涉及底层的硬件逻辑,而是用于用户数据的交换和管理。 和找房子/租房找中介一样,起着中介的作用。

那么为什么要使用中间件呢? 不是只要APP和服务之间直接调用就可以了吗? 也不费事

其实不然:其实不仅仅是中间件,所有的东西的出现都是为了能够在特定的领域解决问题,不同的中间件解决不同领域的问题。 例如,数据库中间件在库划分表、主从分离、web中间件在收到效果请求的过程中做额外的事情。

中间件主要是用于将业务逻辑与非业务逻辑解耦。

2.消息队列(MQ-Message Queue)

是包含创建时间、通道/主体信息的数据传输单位。

队列是高级线性规划体系(FIFO )的存储结构,它包括:

1 .顺序存储:从末尾插入数据,从开头提取数据。 数组后缀为0的一端为头,退出队伍时所有数据向前移动。 这样就有可能发生假溢出。 这有后面的循环队列。

2 .循环储存

使用队列的最常见场景是生产者/消费者模型。 生产者将消息排队,消费者从队列中接收消息。

消息队列(MQ )实现了生产者到消费者的单向通信模型,而RabbitMQ、RocketMQ、Kafka等常见MQ是实现该模型的消息中间件。

这将解决三个问题。

1 .去耦:减少服务间的耦合,由中间件负责中介。

2 )异步)用户下单时,系统需要订单生成、库存计算、发货计算等服务,但所有服务运行后返回用户信息会导致用户体验极差。 此时,可以让他异步执行发货服务,系统响应时间降低,用户体验提高。

3 .截峰:如果用户在某个时间点等访问量较大,直接添加服务器是不太现实的。 尽管如此,因为添加硬件很贵,所以此时可以将未处理的请求排队慢慢处理。 运行会慢一点,但保证系统不会崩溃。

3.消息代理

3358 www.Sina.com/message代理是一种用于验证、转换和路由消息的体系结构模型,大多数实施了中介。 实际上,它是消息中间件服务器,是中间件的核心。

消息队列遥测传输协议(mqtt )是在publish/subscribe模式硬件性能下降的远程设备和网络状况较差时设计的

4.MQTT

低功耗低带宽即时消息轻量级简单开放优点

医疗器械小型化设备智能家居通信物联网

总结:由于消息队列是一种消息中间件,所以mq大多是实现消息代理(中介)的生产者消费者单向通信模式的中间件。 消息队列主要用于缓解高并发性,其次是异步。

Data Lakehouse数据湖到底是什么呢?mybatis对于list更新sql语句怎么写4核8G内存5M带宽云服务器超值特java计算机毕业设计心理健康系统源码+数据库+系统+lw文档+mybatis+运行部署【容器云 UK8S】应用商店:安装使用应用商店RoadRunner有哪些特性
消息中间件选型(常用的第三方中间件有哪些) java嵌入式rabbitmq(rabbitmq消息队列原理)
相关内容