pika相关内容
我有以下docker合成文件: version: '2.3' networks: default: { external: true, name: $NETWORK_NAME } # NETWORK_NAME in .env file is `uv_atp_network`. services: car_parts_segmentor: # container
..
我正在开发一个带有 pika 0.10.0 和 python 2.7 版本的 RabbitMQ 消费者.在我的消费者客户端中,我有一个根据输入消息运行一段时间的进程.它可以从 3 到 40 分钟不等.我不想禁用心跳.相反,我正在寻找一些可以使连接保持活动状态的回滚机制,直到将 delivery_tag 发回.这可能吗? 我得到的链接很少,都建议禁用心跳作为解决方法.但我不想禁用它. 参
..
我是 rabbitmq 和 pika 的新手,并且无法停止消费. 频道和队列设置: connection = pika.BlockingConnection(pika.ConnectionParameters('localhost'))通道 = 连接.通道()channel.queue_declare(queue=new_task_id,durable=True,auto_delete=T
..
我在 python 中使用 pika 框架编写了非常基本的生产者-消费者代码.问题是 - 消费者端在队列中的消息上运行太慢.我进行了一些测试,发现我可以通过多处理将工作流程加快 27 倍.问题是 - 我不知道向我的代码添加多处理功能的正确方法是什么. import pika导入json从日期时间导入日期时间从函数导入 download_xmlsdef 回调(通道、方法、属性、正文):print(
..
我想在我的应用程序中使用消息传递库与 rabbitmq 进行交互.谁能解释一下 pika 和 kombu 库之间的区别? 解决方案 Kombu 和 pika 是两个不同的 Python 库,它们从根本上服务于相同的目的:向/从消息代理发布和消费消息. Kombu 比 pika 具有更高的抽象级别.Pika 仅支持 AMQP 0.9.1 协议,而 Kombu 可以支持其他传输(例如 R
..
我有一个 django 应用程序,我想使用来自 rabbit mq 的消息.我希望监听器在我启动 django 服务器时开始消费.我正在使用 pika 库连接到 rabbitmq.证明一些代码示例确实会有所帮助. 解决方案 首先你需要在 django 项目开始时以某种方式运行你的应用程序https://docs.djangoproject.com/en/2.0/ref/applicatio
..
我正在尝试创建一个订阅多个队列的消费者,然后在消息到达时对其进行处理. 问题是,当第一个队列中已经存在一些数据时,它会消耗第一个队列,而永远不会去消耗第二个队列.但是,当第一个队列为空时,它确实会转到下一个队列,然后同时消耗两个队列. 我首先实现了线程,但想避开它,当 pika 库为我完成它时没有太多复杂性.以下是我的代码: 进口鼠兔mq_connection = pika.Bloc
..
我一直在试图弄清楚在使用 pika 时应该使用哪种连接形式,据我所知,我有两种选择. BlockingConnection 或 SelectConnection,但我不太确定这两者之间的区别(即 BlockingConnection 阻塞是什么?等等) pika 的文档说 SelectConnection 是连接到 rabbit 的首选方式,因为它提供了“多种事件通知方法,包括 sel
..
我在集群中有 2 个 rabbitmq,由 Azure 内部负载均衡器进行负载均衡.客户端使用BlockingConnection 连接到LB. 当客户端交换消息时,一切正常.但是当没有活动时,我的客户似乎已断开连接并且无法再接收消息. 我想知道这个问题是否有解决方案?我假设负载均衡器或 rabbitmq 由于不活动而关闭连接.我想让 pika 触发 rabbitmq 的一些心跳(以便
..
我有一个兔子 mq 在机器上运行 client 和 rabbitMQ 在同一个网络上运行 rabbitMQ 有很多客户端 我可以从 rabbitMQ ping 客户端并返回 机器之间测得的最长延迟为 12.1 毫秒 网络详细信息:标准交换机网络(在单个物理机上运行的虚拟机网络 - 使用 vmware VC) 我在初始化 RPC 连接时随机超时 /usr/lib/pytho
..
我正在尝试运行 RabbitMQ Python 教程,但使用了发件人在 virtualbox 主机和接收器上,并在 virtualbox 客户机上排队.所以我修改了提到的 send.py 代码,仅将 localhost 替换为 192.168.1.5.当我运行它时,我收到以下错误: ..._check_state_on_disconnect 中的文件“/home/damian/.virtuale
..
我正在编写一个自动化测试来测试消费者.到目前为止,我在发布消息时不需要包含标题,但现在我需要.而且它似乎缺少文档. 这是我的出版商: 类 RMQProducer(object):def __init__(self, host, exchange, routing_key):self.host = 主机self.exchange = 交换self.routing_key = 路由键def p
..
为了让事情变得棘手,我想使用来自 rabbitMQ 队列的消息.现在我知道rabbit上有一个MQTT插件(https://www.rabbitmq.com/mqtt.html). 但是,我似乎无法举例说明 Spark 使用从 pika 生成的消息. 例如,我在这里使用简单的 wordcount.py 程序(https://spark.apache.org/docs/1.2.0/str
..
我有两个独立的 RabbitMQ 实例.我正在尝试找到聆听两者事件的最佳方式. 例如,我可以通过以下方式消费其中的事件: credentials = pika.PlainCredentials(user, pass)连接 = pika.BlockingConnection(pika.ConnectionParameters(host="host1", credentials=credent
..
我正在编写一个自动化测试来测试消费者.到目前为止,我不需要在发布消息时包含标题,但现在我需要.而且似乎缺少文档. 这是我的发布商: class RMQProducer(object):def __init__(self, host, exchange, routing_key):self.host = 主机self.exchange = 交换self.routing_key = routi
..
我实现了多个消费者,他们从单个队列中获取消息,我使用类似于 这个例子,除了我在一个无限循环中执行 basic.get 以进行轮询. 知道如何防止所有消费者之间发生竞争,因为只有一个消费者会收到消息,而另一个消费者将继续进行轮询,直到另一条消息到来吗? 我尝试实现一个逻辑,在该逻辑中,一旦我收到消息,我就确认它以删除消息,但似乎其他一些队列在第一个队列确认并删除它之前设法获取了该消息.所以每
..
类似的问题似乎都基于使用自定义记录器,我很高兴只使用默认值/根本不使用.我的 pika python 应用程序运行并接收消息,但几秒钟后崩溃,找不到记录器“pika.adapters.blocking_connection"的处理程序,有什么想法吗? 导入鼠兔凭证 = pika.PlainCredentials('xxx_apphb.com', 'xxx')参数 = pika.Connectio
..
我正在使用 scrapy-rabbitmq 从 RabbitMQ 获取 url 到我的 scrapy.我在我的 settings.py 文件中使用以下内容 RABBITMQ_CONNECTION_PARAMETERS = {"credentials": pika.PlainCredentials('test', 'test'),'host': '10.0.12.103', 'port': 567
..
我有在 Docker 中运行的 RabbitMQ 服务器和两个连接到服务器并使用标头交换相互发送消息的 python 客户端.消息速率约为 10/s.一段时间后(大部分时间是在交换了 300-500 条消息之后),其中一个交换变得无响应.channel.basic_publish 调用无一例外地通过,但接收者没有收到任何消息.同样在rabbitmq仪表板上,这个交易所没有任何活动.rabbitmq
..
我使用的是 Quart 框架,但我也需要使用 RabbitMQ Pika 连接器,但我无法让它们发挥良好的作用,因为它们都有无限循环. 入口点: from quart import Quart从 .service 导入服务app = Quart(__name__)@app.before_serving异步定义启动():app.service_task = asyncio.ensure_fu
..