当前位置:  开发笔记 > 编程语言 > 正文

RabbitMQ def回调(通道,方法,属性,主体)

如何解决《RabbitMQdef回调(通道,方法,属性,主体)》经验,为你挑选了1个好方法。

只想知道worker.py文件中的参数名称含义:

def callback(ch, method, properties, body):
    print " [x] Received %r" % (body,)

ch,方法,属性意味着什么?



1> Derick Baile..:

ch

“ ch”是进行通信的“通道”。

将RabbitMQ连接分为两部分:

TCP / IP连接

连接内的通道

实际的TCP / IP连接创建起来很昂贵,因此每个流程实例只需要一个连接。

一个通道是使用RabbitMQ完成工作的地方。连接中存在一个通道,您需要具有通道参考,以便您可以确认/拒绝消息等。

方法

我认为“方法”是有关邮件传递的元信息

当您想确认该消息时-告诉RabbitMQ您已完成处理-需要通道和传递标签。交付标签来自method参数。

我不确定为什么将其称为“方法”-也许与AMQP规范有关,其中“方法”是有关执行哪种AMQP方法的元数据?

属性

消息的“属性”是消息上用户定义的属性。您可以在这些属性中设置所需的任意键/值对,并可能获得诸如使用路由键之类的信息(尽管这可能来自“方法”)

属性通常用于代码需要具有的数据位,但不是实际消息主体的一部分。

例如,如果您有一个重新排序程序来确保按顺序处理邮件,则“属性”可能包含邮件的序列号。

推荐阅读
贴进你的心聆听你的世界
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有