python - gevent 猴子补丁停止 rabbit mq 列出消息
问题描述
我在我的 python 烧瓶应用程序中使用 gevent 线程,当我不猴子修补 python 线程时,兔子 mq 消息传递似乎工作正常,但是当我执行 gevent 猴子补丁时,兔子 mq 客户端 pika 停止侦听。想知道这种行为。
解决方案
此问题的原因是使用 rabbitmq 时 Pika 和 gevent.monkey_patch 不兼容。如果可能的话,您必须在不修补系统调用的情况下使用 gevent。如果您在 gevent 中使用线程,那么您可能会遇到此问题greenlet.error: cannot switch to a different thread
这是因为猴子补丁。为此,您可以尝试使用进程而不是线程。
推荐阅读
- bash - Bash 脚本 ghost txt 文件
- python - 无法为所需的逻辑创建 django 查询?
- php - 用php文件上传文件作者的名字
- node.js - 导入 Cognito 时遇到问题,“未定义 AmazonCognitoIdentity”
- c# - 方法“初始化”没有重载需要 0 个参数
- excel - 使用 VBA 突出显示包含公式的空白单元格
- php - 将方法绑定到php中的另一个方法
- javascript - 正确的 ajax 脚本,它从数据库中获取对象列表
- android - 在 RecyclerView 中添加带有 Header 的新项目导致 ArrayIndexOutOfBoundsException
- c# - web.api 中的同步和异步方法