Django - 谷歌云 - pubsub - celery - kubernetes 问题

问题描述

我在一些 GCP 项目的云功能中有用于电子邮件发送的微服务。在不同的 GCP 项目中,我使用 kubernetes 部署了电子商务应用程序。我想通过我的微服务在电子商务上进行一些活动后发送邮件,我使用 pub/sub 进行通信。我在 celery 任务中发布消息时遇到问题。当我使用管理命令发布消息时一切正常,但是当我从管理命令触发芹菜任务时出现问题。 code image 这将导致如下图所示的错误(进程“ForkPoolWorker-10”pid:276 以“信号 11(SIGSEGV)”退出)但是奇怪的事情 - 正在发送消息,而收件人收到此消息。 error image

其他任务没有这样的问题。如果我注释行“ 未来=publisher.publish(topic_path,json_data.encode("utf-8")) ” 没有错误。我知道信号 11 (SIGSEGV) 连接到内存,但我已经让我的 kubernetes 机器更强大,所以我认为这不是问题。

Logs from GCP 奇怪的也是 ForkPoolWorker-7 成功完成此任务的原因,但 'ForkPoolWorker-3' pid:227 以 'signal 11' 退出

解决方法

好的,问题在于创建多线程的发布者 PublisherClient 和 celery 不能正确使用线程。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...