消息队列介绍
1.简介
RabbitMQ也是消息队列,那RabbitMQ和之前python的Queue有什么区别么?
如果是两个完全独立的python程序,也是不能用上面两个queue进行交互的,或者和其他语言交互有哪些实现方式呢。 【Disk、Socket、其他中间件】这里中间件不仅可以支持两个程序之间交互,可以支持多个程序,可以维护好多个程序的队列。
像这种公共的中间件有好多成熟的产品: RabbitMQ ZeroMQ ActiveMQ ……
RabbitMQ:erlang语言 开发的。 Python中连接RabbitMQ的模块:pika 、Celery(分布式任务队列) 、haigha 可以维护很多的队列
RabbitMQ 教程官网:http://www.rabbitmq.com/getstarted.html
几个概念说明:
二、RabbitMQ基本示例.
1、Rabbitmq 安装
1.1 Rabbit MQ 是建立在强大的Erlang OTP平台上,因此安装Rabbit MQ的前提是安装Erlang。先下载Erlang安装包。
下载地址:http://www.erlang.org/downloads
首先确定你的window电脑是32位还是64位,以下的安装以window 64位电脑举例。
1.2 运行行Erlang/OTP(otp_win64_20.0.exe)的安装步骤,按下一步
1.3 下载Rabbit MQ, 下载地址:http://www.rabbitmq.com/install-windows.html
运行安装 Rabbit MQ Server Windows Installer (v3.6.12) rabbitmq-server-3.6.12.exe
1.4 检查RabbitMQ是否运行正常
打开命令行命令行,进入RabbitMQ的安装目录: cd rabbitmq_server-3.5.2\sbin
,输入 rabbitmqctl status , 如果出现以下的图,说明安装是成功的,并且说明现在RabbitMQ Server已经启动了,运行正常.
具体的安装以上两个exe文件的步骤可以参考:http://jingyan.baidu.com/article/a17d5285173ce68098c8f2e5.html
1.5 -- 接下来我们需要安装 RabbitMQWeb的管理插件,接着上面继续输入以下命令(rabbitmq-plugins enable rabbitmq_management),回车后可以到以下输出:
1.6 -- 此时,已经可以通过 http://127.0.0.1:15672/ 地址来访问web管理界面了,默认的账户和密码均是 guest。但实际使用时可能需要重新一个新的管理账户。下面即继续通过命令来创建新的账户并且授予管理员的权限:
-- 查看默认的账户列表信息(输入:rabbitmqctl,bat list_users):
1.7 -- 新建账户:rabbitmqctl add_user Username Password (user1-123)
1.8 -- 授予管理员权限(输入:rabbitmqctl.bat set_permissions -p / user1 ".*" ".*" ".*"):
rabbitmqctl set_user_tags User Tag
User为用户名, Tag为角色名(对应于上面的administrator,monitoring,policymaker,management,或其他自定义名称)。
1.9---- 至此安装过程均已完成,下面就可以使用刚创建的账户登录进行管理了.
三,通俗的解释:
适用场景:
-
常用于一个生产者多个消费者的场景。
-
也可以是多个消费者一个生产者。
意义:说白了就是产生数据的和消费数据的解耦合。就像是个大鱼塘,放鱼的不用管抓鱼的。抓鱼的也不用管放鱼的。
四,Pycharm中安装pika
4.1 setting中点+
4.2 搜索包
4.3 安装成功