gpt4 book ai didi

python - 在 flask 中使用 Gevent : API is not asynchronous

转载 作者:行者123 更新时间:2023-12-03 13:18:33 25 4
gpt4 key购买 nike

之前我使用的是 Waitress。现在我正在使用 Gevent运行只有一个 API 的 Flask 应用

from flask import Flask, request, jsonify
import documentUtil
from gevent.pywsgi import WSGIServer

app = Flask(__name__)

@app.route('/post-document-string', methods=['POST'])
def parse_data():
req_data = request.get_json(force=True)
text = req_data['text']
result = documentUtil.parse(text)
return jsonify(keywords = result)

if __name__=='__main__':
http_server = WSGIServer(('127.0.0.1', 8000), app)
http_server.serve_forever()

这很好用。但是 API 不是异步的。如果从前端,我同时触发同一个 API 两次,第二次调用会等待第一个调用先给出响应。

这里有什么问题?我怎样才能让它异步?

最佳答案

我们使用 Gunicorn 在多个进程中运行 Flask。这样你就可以从 python 中获得更多的汁液 + 自动重启等等。示例配置文件:

import multiprocessing

bind = "0.0.0.0:80"
workers = (multiprocessing.cpu_count() * 2) + 1
# ... additional config

然后用类似的东西运行

gunicorn --config /path/to/file application.app

关于python - 在 flask 中使用 Gevent : API is not asynchronous,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63471812/

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