微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Apache HTTP Server和Flask:避免过一段时间后重新启动Python App

如何解决Apache HTTP Server和Flask:避免过一段时间后重新启动Python App

我有一个使用Apache HTTP Server运行的Flask服务器。 python程序首先将大量文件加载到内存中(大约需要10分钟),然后提供一些REST API。

在一段时间内,一切正常,但是在大约一天后(或有些不活动?),python程序关闭了。当收到新请求时,该程序将重新启动(因此一段时间后的第一个请求将花费10分钟)。在python程序中创建的缓存自然也为空。

这是我的/etc/apache2/sites-available/server.conf(我用尖括号替换了实际路径):

<VirtualHost *:80>
     # Add machine's IP address (use ifconfig command)
     ServerName <IP here>

     WsgiDaemonProcess myapp python-home=<path>
     WsgiProcessGroup myapp
     WsgiApplicationGroup %{GLOBAL}

     # Give an alias to to start your website url with
     WsgiScriptAlias <some alias> <path to wsgi>
     <Directory <dir>>
             # set permissions as per apache2.conf file
            Options FollowSymLinks
            AllowOverride None
            Require all granted
     </Directory>
     ErrorLog ${APACHE_LOG_DIR}/error.log
     LogLevel warn
     CustomLog 
</VirtualHost>

这是我的wsgi文件,位于<path to wsgi>下:

#! /usr/bin/python3111

import logging
import sys
logging.basicConfig(stream=sys.stderr)
sys.path.insert(0,'<python application root>')
from flask_server import app as application
application.secret_key = 'anything you wish'

我猜我缺少一些配置行,可以使python程序永远存活...?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。