This document is for Kombu's development version, which can be significantly different from previous releases. Get the stable docs here: 5.0.
连接/生产商池- kombu.pools
¶
公共资源池。
- class kombu.pools.ProducerPool(connections, *args, **kwargs)[源代码]¶
池中
kombu.Producer
实例。- class Producer(channel, exchange=None, routing_key=None, serializer=None, auto_declare=None, compression=None, on_return=None)¶
消息制作人。
论点:¶
Channel(kombu.Connection,Channel):连接或通道。Exchange(kombu.entity.Exchange,str):可选默认交换。ROUTING_KEY(Str):可选的默认路由键。序列化程序(Str):默认的序列化程序。缺省值为 "json" 。COMPRESSION(字符串):默认压缩方式。
默认设置为无压缩。
- AUTO_DECLARE(Bool):自动声明默认交换
在实例化时。缺省值为
True
。- On_Return(Callable):回调以调用无法投递的消息,
当 mandatory 或 immediate 争论到
publish()
使用的是。此回调需要以下签名: (exception, exchange, routing_key, message) 。请注意,生产者需要排出事件才能使用此功能。
- auto_declare = True¶
默认情况下,如果设置了默认交换,则在发布消息时将声明该交换。
- property channel¶
- close()¶
- compression = None¶
默认压缩方法。默认情况下禁用。
- property connection¶
- declare()¶
申报交易所。
注:¶
在实例化时,这会自动发生
auto_declare
标志已启用。
- exchange = None¶
默认汇兑
- maybe_declare(entity, retry=False, **retry_policy)¶
如果在本次会议期间尚未声明汇率,请声明汇率。
- on_return = None¶
基本返回回调。
- publish(body, routing_key=None, delivery_mode=None, mandatory=False, immediate=False, priority=0, content_type=None, content_encoding=None, serializer=None, headers=None, compression=None, exchange=None, retry=False, retry_policy=None, declare=None, expiration=None, timeout=None, **properties)¶
将消息发布到指定的Exchange。
论点:¶
Body(Any):消息正文。ROUTING_KEY(Str):消息路由键。Delivery_模式(枚举):请参阅
delivery_mode
。必填项(Bool):目前不支持。Immediate(Bool):当前不支持。优先级(Int):消息优先级。介于0和9之间的数字。content_type(Str):内容类型。默认设置为自动检测。CONTENT_ENCODING(字符串):内容编码。默认设置为自动检测。序列化程序(Str):要使用的序列化程序。默认设置为自动检测。压缩(Str):要使用的压缩方法。默认设置为无。Header(Dict):要传递的任意标头的映射使用邮件正文。
- Exchange(kombu.entity.Exchange,str):覆盖交换。
请注意,此交换必须已申报。
- 声明(顺序 [EntityT] ):所需实体的可选列表
这肯定是在发布消息之前声明的。这些实体将使用
maybe_declare()
。- 重试(Bool):重试发布或声明实体(如果
连接中断。
- RETRY_POLICY(DICT):重试配置,这是关键字
支持:
ensure()
。- 过期(浮动):可以为每条消息指定以秒为单位的TTL。
默认设置为无到期。
- 超时(浮点):将超时设置为等待最大超时秒数
用于发布消息。
**PROPERTIES(ANY):其他消息属性,参见AMQP规范。
- release()¶
- revive(channel)¶
断开连接后恢复制作人。
- routing_key = ''¶
默认路由密钥。
- serializer = None¶
要使用的默认序列化程序。默认为JSON。
- close_after_fork = True¶