मैं एफसीजीआई के साथ पायथन फ्लास्क + nginx का उपयोग कर रहा हूँ।पायथन फ्लास्क + 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 (शायद किसी प्रकार की स्ट्रीम द्वारा) की आपूर्ति करना।
मैं इस आम मुद्दे के समाधान को खोजने में असमर्थ था। यह कैसे प्राप्त किया जाएगा?
धन्यवाद!