【问题标题】:My backend calls itself via API - works fine with flask webserver, hangs with gunicorn我的后端通过 API 调用自身 - 与烧瓶网络服务器一起正常工作,与 gunicorn 一起挂起
【发布时间】:2020-09-07 10:48:47
【问题描述】:

我的应用程序是一个为 SPA 前端反应应用程序提供服务的 Flask 后端。后端实际上由 2 层组成,称为 api 和 bff。所有三个都从同一个进程运行。

前端调用 bff,有时会调用 api 层 - REST api 调用,而不是内部函数调用。例如。后端做 requests.get("http://localhost/api/foo").

当我使用烧瓶网络服务器在本地运行我的应用程序时,它工作得非常好。 当我使用 gunicorn 在本地运行我的应用程序时,从前端到后端的调用工作正常,但后端对其自身的调用却不行。

我不明白有什么不同。这是一个典型的打印输出;我的打印调试消息显示正在调用的 URL,然后是 30 秒后的 gunicorn 关键工人死亡消息。我注意到此时会话 cookie 实际上已被擦除,因此工作人员实际上正在死亡。为什么?!

http://localhost:5000/api/requests/
[2020-05-20 21:30:12 +0100] [769] [CRITICAL] WORKER TIMEOUT (pid:771)

我会非常感谢这里的任何帮助,谢谢。

【问题讨论】:

    标签: python flask gunicorn


    【解决方案1】:

    我不清楚为什么我没有看到任何错误,但看起来有一个未处理的错误。我解决了这个问题,现在可以了。当我在本地运行时,我使用了一个稍微不同的配置,它没有遇到未处理的错误,所以这不是一个等价的场景。

    【讨论】:

      猜你喜欢
      • 2011-02-25
      • 2018-09-12
      • 1970-01-01
      • 2017-05-24
      • 2020-06-04
      • 2018-12-27
      • 2021-08-17
      • 2019-08-14
      • 1970-01-01
      相关资源
      最近更新 更多