저는 FCGI와 함께 Python Flask + nginx를 사용하고 있습니다.Python Flask + nginx fcgi - 큰 응답을 출력 하시겠습니까?
일부 요청에 대해서는 커다란 응답을 출력해야합니다. 보통 이러한 응답은 소켓에서 가져옵니다. 현재 다음과 같은 응답을하고 있습니다.
response = []
while True:
recv = s.recv(1024)
if not recv: break
response.append(recv)
s.close()
response = ''.join(response)
return flask.make_response(response, 200, {
'Content-type': 'binary/octet-stream',
'Content-length': len(response),
'Content-transfer-encoding': 'binary',
})
문제는 실제로 데이터가 필요하지 않다는 것입니다. 또한 정확한 응답 길이를 소켓에서 가져올 결정하는 방법이 있습니다. 그래서 HTTP 헤더를 보내고 소켓에서 직접 출력을 시작하는 대신 메모리에서 수집 한 다음 nginx (아마도 일종의 스트림)를 제공하는 좋은 방법이 필요합니다.
이 겉으로보기에는 일반적인 문제에 대한 해결책을 찾을 수 없습니다. 어떻게 달성 될 것인가?
감사합니다.