gpt4 book ai didi

python - 如何使用在 gunicorn 服务器 Hook 中创建的变量?

转载 作者:太空宇宙 更新时间:2023-11-04 06:41:36 25 4
gpt4 key购买 nike

我正在使用 gunicorn 来运行我的 Flask 应用程序。我想注册服务器 Hook 以在应用程序启动时和关闭之前执行一些操作,但我对如何将变量传递给这些函数以及如何提取在它们中创建的变量感到困惑。

在 gunicorn.conf.py 中:

bind = "0.0.0.0:8000"
workers = 2
loglevel = "info"
preload = True

def on_starting(server):
# register some variables here
print "Starting Flask application"

def on_exit(server):
# perform some clean up tasks here using variables from the application
print "Shutting down Flask application"

在 app.py 中,示例 Flask 应用程序:

from flask import Flask, request, jsonify

app = Flask(__name__)

@app.route('/hello', methods=['POST'])
def hello_world():
return jsonify(message='Hello World')

if __name__ == '__main__':
app.run(host='0.0.0.0', port=9000, debug=False)

像这样运行 gunicorn:$ gunicorn -c gunicorn.conf.py app:app

最佳答案

有点晚了,但是您可以通过 server.app.wsgi() 访问 flask 应用程序实例。它返回工作人员使用的相同实例(flask.current_app 也返回的实例)。

def on_exit(server):
flask_app = server.app.wsgi()
# do whatever with the flask app

关于python - 如何使用在 gunicorn 服务器 Hook 中创建的变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40951861/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com