为了账号安全,请及时绑定邮箱和手机立即绑定

无法在 uwsgi + nginx 部署下使用 tensorflow 模型

无法在 uwsgi + nginx 部署下使用 tensorflow 模型

POPMUISE 2021-06-14 15:59:20
我正在尝试在 tensorflow + flask + uWSGI 中使用MTCNN部署人脸检测服务。我的部署基于这个 docker并添加了这个自定义uwsgi.ini:[uwsgi]module = maincallable = appenable-threads = truecheaper = 2processes = 16threads = 16http-timeout = 60但是当我尝试使用我刚刚构建的这个 docker 图像进行人脸检测时,我总是得到504 Gateway Time-out. 实际上,当我深入挖掘时,我注意到代码在此 session.run 行中运行良好:    for op_name in data_dict:        with tf.variable_scope(op_name, reuse=True):            for param_name, data in iteritems(data_dict[op_name]):                try:                    var = tf.get_variable(param_name)                    session.run(var.assign(data))                except ValueError:                    if not ignore_missing:                        raise一开始,我以为是uwsgi worker下线程的问题,于是我增加了进程数和线程数,但没有成功。当我使用 Flask 调试器运行相同的代码时,它运行得很好并且在不到一秒的时间内处理了图像。所以这不是代码的问题,而是配置或这些工具组合的问题。
查看完整描述

3 回答

?
撒科打诨

TA贡献1934条经验 获得超2个赞

您还需要设置cheaper = 0. 这是我的 uwsgi,它正在工作。


[uwsgi]

module = main

callable = app

master = false 

processes = 1

cheaper = 0


查看完整回答
反对 回复 2021-06-29
?
绝地无双

TA贡献1946条经验 获得超4个赞

使用master = falseprocesses = 1用于 uwsgi 配置。有一个已知问题,即tensorflow 在多进程设置中挂起


查看完整回答
反对 回复 2021-06-29
  • 3 回答
  • 0 关注
  • 166 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信