celery在prefork模式下应当如何处理数据库链接(psycopg2)?

发布于 2022-09-07 19:31:42 字数 389 浏览 14 评论 0

问题描述

celery使用prefork模式(4进程),和psycopg2搭配使用,每次启动可以成功完成一个celery任务,在进行第二个任务时就会出现InterfaceError: cursor already closed,请问应该如何处理。

自己尝试过哪些方法

psycopg2文档中看到,这个库不应在forked process中使用。所以有点疑惑,是因为celery的prefork模式所以导致了问题的出现吗?那么我应当如何处理比较合适?是否需要在每个celery任务中新建一个数据库链接,做完了再关掉?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文