【问题标题】:Tensorflow getting stuck on prediction when deploying with gunicorn使用 gunicorn 部署时,Tensorflow 卡在预测上
【发布时间】:2020-02-22 20:20:22
【问题描述】:

我已经为自己构建了一个烧瓶网络服务器,并正在使用 Gunicorn 部署它。它与默认的烧瓶 app.run() 配合得非常好,但这并不适用于生产环境,所以直到现在我的烧瓶应用程序都在 gunicorn 上运行。

但是,自从将 TensorFlow 程序添加到我的网站后,当我运行预测时,它会永远运行,我将超时设置为 5 分钟。我在预测之前使用打印语句和在预测之后使用打印语句进行了测试。第二次打印永远不会出现。

有什么想法吗?

【问题讨论】:

    标签: python tensorflow gunicorn tensorflow2.0


    【解决方案1】:

    如果您在路线内运行繁重的计算,您最好更改您的程序设计。

    在您的路线上,在其他线程或进程上启动作业,并返回进程启动的状态和 ID 以查询其进度。

    然后你用你的 ID 调用查询 [or web sockets] 你的繁重任务,并返回它的状态,直到过程完成,你可以返回结果

    【讨论】:

    • 它在 gunicorn 外跑得超级快。它不是一个超级繁重的计算,我认为它与gunicorn有关。在我运行大量计算的其他一些路线上,我转而使用 websockets 来做这件事,就像你说的那样。我可能会在浏览器中运行 tf.js 并使用 websockets 作为替代方案。
    猜你喜欢
    • 1970-01-01
    • 2016-05-04
    • 2020-04-06
    • 1970-01-01
    • 2020-08-22
    • 2018-11-27
    • 2016-03-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多