在python中在后台返回和处理请求

在python中在后台返回和处理请求,python,python-3.x,api,swagger,Python,Python 3.x,Api,Swagger,我有一个函数,它处理从swagger传递的文件数据。但当文件大小大于时,响应和请求将花费更长的时间 def func(): file = request.files['fileName'] file_data = file.read().splitlines() <read file and process each line> return 'File processed' def func(): file=request.files['fileN

我有一个函数,它处理从swagger传递的文件数据。但当文件大小大于时,响应和请求将花费更长的时间

def func():
    file = request.files['fileName']
    file_data = file.read().splitlines()
    <read file and process each line>
    return 'File processed'
def func():
file=request.files['fileName']
file_data=file.read().splitlines()
返回“已处理文件”
现在我只想返回上传的文件,使用201,然后在后台继续处理

大概是这样的:

def func():
    try:
       file = request.files['fileName']
       file_data = file.read().splitlines()
       if file_data:
          return "File uploaded successfully"
     finally:
        <read file and process each line>
def func():
尝试:
file=request.files['fileName']
file_data=file.read().splitlines()
如果文件\u数据:
返回“文件上传成功”
最后:
这是我一直在尝试的

我能得到一些建议吗?或者是否有比这更好的解决方案。
谢谢

看起来您需要一个分布式任务队列,比如有没有其他轻量级库?有-尽管我没有亲自使用过。还可以选择分叉一个新进程,以使用subprocess.Popen完成任务,subprocess.Popen是一个python内置模块。对于一个小项目来说,这可能还可以,但不能很好地扩展。我终于用一个线程完成了。看起来你需要一个分布式任务队列,比如有没有其他轻量级库?有-尽管我没有亲自使用它。还可以选择分叉一个新进程,以使用subprocess.Popen完成任务,subprocess.Popen是一个python内置模块。对于一个小项目来说,这可能还可以,但不能很好地扩展。我最终用一个线程完成了这项工作。