gpt4 book ai didi

python - 在客户请求后运行方法

转载 作者:太空宇宙 更新时间:2023-11-04 08:53:10 26 4
gpt4 key购买 nike

为了尽量减少请求时间,我想在向客户端返回 200 之后执行该方法。

@app.route('/register', methods=['POST'])
def register():
#code and code
return 200
send_email_with_validation_url()

我该怎么做?用线程?

最佳答案

您可以使用线程来做到这一点,但如果没有一些控制,您最终可能会遇到大量线程阻塞资源的情况。您还可能在不知不觉中导致进程崩溃。

这是队列系统的工作。 Celery会很合适。类似的东西:

from celery import Celery

app = Celery('tasks', broker='amqp://guest@localhost//')

@app.task
send_email_job(address):
send_email_with_validation_url()


@app.route('/register', methods=['POST'])
def register():
#code and code
send_email_job.delay(address)
return 200

在此示例中,send_email_job 将使用给定的参数安排在后台运行(在不同的线程或进程中,甚至是机器中),您的服务器将立即返回。

关于python - 在客户请求后运行方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33105845/

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