使用pika的助手库。
pikacon的Python项目详细描述
Pikacon是一个帮助程序库,它可以减少 当使用pika创建到代理和 声明交换和队列。有了Pikacon,你就可以轻松地排队,不受任何影响。
要求
- python 2.7版
- 皮卡=0.9.8
用法
pikacon提供了可以导入到程序中的helper类。等级 以.ini样式配置文件的路径作为参数并创建连接, 从那里自动交换、队列和绑定。你所需要的 提供正确的配置。
创建顺序如下:
- 连接
- 频道
- 交换
- 排队
- 绑定
配置
pikacon使用pythons configparser获取连接、交换和 排队。
经纪人
Broker的配置如下例所示。节名是broker和options 是经纪人的常规PIKA参数。如果要配置ssl\u选项 为它们创建新的节,并在代理选项中引用该节名称。 例如:
[broker] ... ssl = True ssl_options = my_ssl_options [my_ssl_options] ...
交换
exchange的节名由两部分除以“:”组成。第一部分是 “exchange”,第二部分是exchange的名称。例如:
[exchange:myexchange] ...
exchange部分下面的实际选项是normal key=value参数 用在皮卡上。
排队
队列部分由两部分组成,除以“:”。第一部分是 “queue”,第二部分是队列的名称。例如:
[queue:myqueue] ...
队列部分下面的选项是:
durable = True|False exclusive = True|False arguments = queue:queuename:arguments
队列的额外参数由另一部分提供。皮卡孔假设 参数部分的名称遵循以下约定 'queue:queuename:nameofargumentssection'。
队列部分下面的实际选项是normal key=value参数 在皮卡中使用。
绑定
绑定节的名称由三个部分除以“:”。弗斯特 部件总是“绑定”的。第二部分是我们要绑定的队列的名称。 第三部分是绑定队列的交换的名称。例如:
[binding:myqueue:myexchange] ...
绑定部分下面的实际选项是normal key=value参数 用在皮卡上。
完整配置示例
[broker] host = localhost port = 5672 username = guest password = guest virtual_host = / heartbeat = 60 [exchange:exchangename] type = direct durable = False auto_delete = True [queue:testqueue1] durable = True exclusive = False [queue:testqueue2] durable = False exclusive = False [queue:testqueue3] durable = True exclusive = False arguments = queue:testqueue3:arguments [queue:testqueue4] durable = True exclusive = False [queue:testqueue3:arguments] x-message-ttl = 1800000 x-dead-letter-exchange = exchangename x-dead-letter-routing-key = key4 [binding:testqueue1:exchangename] routing_key = key1 [binding:testqueue2:exchangename] routing_key = key2 [binding:testqueue3:exchangename] routing_key = key3 [binding:testqueue4:exchangename] routing_key = key4
上面的示例配置到本地主机上代理的连接。它定义了一个 名为exchangename的直接交换和名为testqueue1的四个队列, 测试队列2、测试队列3和测试队列4。TestQueue3有额外的参数 定义死信交换。所有队列都绑定到我们唯一的 设置键1、键2、键3和键4。
更改日志
0.3.1-2012年12月02日
- 修复了setup.py和readme.rst。
0.3-2012年12月02日
- 需要pika>;=0.9.8
- 支持与pika相同的连接参数集。
- 缩短配置文件结构。为旧版本创建的配置文件 Pikacon的版本已经不起作用了。