Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Django:我可以在回复返回后再做工作吗?_Django_Request - Fatal编程技术网

Django:我可以在回复返回后再做工作吗?

Django:我可以在回复返回后再做工作吗?,django,request,Django,Request,我有一个SLO,可以在3秒钟内从django应用程序返回响应,但有时我在请求中所做的工作需要比这个更长的时间。额外的工作可以异步完成,所以我正在研究芹菜 但是,这项工作在逻辑上属于请求,如果我不必去做设置芹菜队列的所有额外工作,那就太好了。我没有太多的流量,我不介意花多一点时间和我的uwsgi员工在一起 在返回响应后但在离开请求周期之前,是否有任何可宽恕的方式(甚至可能是不可宽恕的方式)来执行工作?您不能使用请求\u finished?@Lotram感谢您的指导!这看起来就像我想要的-我可以进行

我有一个SLO,可以在3秒钟内从django应用程序返回响应,但有时我在请求中所做的工作需要比这个更长的时间。额外的工作可以异步完成,所以我正在研究芹菜

但是,这项工作在逻辑上属于请求,如果我不必去做设置芹菜队列的所有额外工作,那就太好了。我没有太多的流量,我不介意花多一点时间和我的uwsgi员工在一起


在返回响应后但在离开请求周期之前,是否有任何可宽恕的方式(甚至可能是不可宽恕的方式)来执行工作?

您不能使用
请求\u finished
?@Lotram感谢您的指导!这看起来就像我想要的-我可以进行回调并订阅请求,就像从django.core.signals import request_finished def my_callback(发送方,**kwargs):import ipdb;ipdb.set_trace()request_finished.connect(我的_回调)``不幸的是,我想,我还没有弄明白如何达到调试点:/需要任何额外的设置才能让它工作?@Lotram我得到了信号工作,但它对我当前的应用程序没有多大用处,因为我必须在请求周期之外订阅,所以钩子对我在给定请求中想要什么一无所知-(不过还是要谢谢你!