Rabbitmq就是一个高级消息队列协议的开源消息协议的中间件,消息队列是应用程序到应用程序之间进行数据通信的通道,应用程序将消息发到队列中.另一方从队列中读取数据,完成数据的交互
在Python中在一个进程之中多线程可以通过线程队列完成线程之间的通信,也使用进程队列完成不通进程之间的通信
在上述两者之中使用的队列模块都是Python独有的 假如我现在有个进程A使用Python开发,有个进程B使用Go开发的,由于不同的语言问题导致不能完成数据的通信
或者两个应用程序都不在同一台主机
为解决上述问题 我们可以使用Rabbitmq进行不同语言开发的不同程序进行数据交互
系统的高可用性:
在电商某商品进行商品秒杀的时候,高流量,高并发的场景,由于服务器接收大量的数据请求,可能导致服务器宕机,某些业务场景可能极为复杂,但是实时性不是很高,我们可以将其加入到队列中,让程序后台去处理,减少服务器的压力
系统的高扩展性:
分布式系统,集成系统,子系统之间的对接,以及架构设计中常常需要考虑消息队列的应用。
pip install pika
生产者(producter):负责产生数据 并将数据传入到队列中
原文:https://www.cnblogs.com/SR-Program/p/12571365.html