当旧请求在Flask中处理时,如何保存新请求?

2024-09-30 05:32:49 发布

您现在位置:Python中文网/ 问答频道 /正文

我在flask中创建了一个python应用程序。这里是代码的骨架

app = Flask(__name__)

@app.route('/', methods=['GET'])
def authentication():
    '''athentication process'''
    return 'authenticated'

因此,当用户调用应用程序时,它将进行身份验证。但是,如果两个用户同时或在处理一个身份验证时调用,我希望保留新请求,直到旧请求完成,然后我希望启动新请求。我试过使用semaphore,但不起作用。这是我试过的

@app.route('/', methods=['GET'])
    def authentication():
        sem.acquire()
        '''athentication process'''
        sem.release()
        return 'authenticated'

我在{}中部署了这个。你知道我怎样才能做到这一点吗

PS:如果无法完成此操作,至少我希望响应新请求,即另一个请求正在处理中,并在一段时间后重试


Tags: 用户身份验证app应用程序flaskgetauthenticationreturn
1条回答
网友
1楼 · 发布于 2024-09-30 05:32:49

简短回答:别担心

这是web服务器的工作。当您在任何服务器(如Apache、Nginx等)上托管应用程序时,服务器会为您的flask应用程序创建多个进程。当出现请求时,服务器程序会将其转发给任何空闲进程,如果没有空闲进程,服务器会将请求排队,直到一个进程变为空闲。 这是对HTTP服务器如何工作的高级概述

相关问题 更多 >

    热门问题