美文网首页
Python完成RabbitMQ实践

Python完成RabbitMQ实践

作者: 刘小白DOER | 来源:发表于2022-05-19 11:54 被阅读0次

      笔者以前的文章有关于RabbitMQ实践— Docker应用:消息中间件RabbitMQ,使用docker和LabVIEW来探索RabbitMQ。

      最近需要UDP监听获取大量的数据,为了和后端的数据处理功能解耦合,实现异步处理。笔者今天测试了一下消息队列RabbitMQ。在了解RabbitMQ的过程中,笔者记得在程序管理中发现过安装过这个程序,但是笔者没有自己安装过,通过安装时间确定是LabVIEW的附带安装。于是发现LabVIEW的队列功能其实是基于RabbitMQ来实现的,这也坚定了我使用RabbitMQ而不是其他Message Queue的原因。对于小数据量的单机来说,RabbitMQ低消耗其实是个不错的选择。

    消息队列(Message Queue)是在消息的传输过程中保存消息的容器

      RabbitMQ 是一个由 Erlang 语言开发的 AMQP 的开源实现,版本要求说明:RabbitMQ Erlang Version Requirements — RabbitMQ 。笔者最开始安装RabbitMQ是rabbitmq-server-3.10.1,Erlang 是otp_win64_25.0,在rabbitmq-plugins enable rabbitmq_management命令安装管理页面的插件时发现有错误,rabbitmq-server.bat启动脚本启动服务时也存在问题,于是将Erlang 倒退到otp_win64_24.3.4之后问题解决。关于在windows下安装RabbitMQ 的其他问题,笔者就不再阐述了,网络上有很多资料。

    1、rabbitmq-plugins 安装管理页面插件

    2、双击rabbitmq-server.bat启动脚本或者rabbitmq-server start,然后打开服务管理可以看到RabbitMQ正在运行。打开浏览器输入http://localhost:15672,账号密码默认是:guest/guest 。

    3、管理网页界面如下所示。

    4、使用python创建一个生产者,声明一个管道,在管道里声明queue,在管道里发消息

        运行代码如下:

        管理界面显示存在hello队列。

    5、使用python创建一个消费者,从指定的queue获取消息,处于等待接收消息的状态,如果没收到消息就一直处于阻塞状态,收到消息就调用回调函数 。

    相关文章

      网友评论

          本文标题:Python完成RabbitMQ实践

          本文链接:https://www.haomeiwen.com/subject/koqtprtx.html