Tornado प्रॉक्सी पर्यायांना योग्य HTTP बॅकएंड आवश्यक आहे
प्रॉक्सी विनंती पर्याय संरचीत करण्यापूर्वी Tornado ची सक्रिय HTTP क्लायंट अंमलबजावणी तपासा.
Tornado एक असिंक्रोनस HTTP क्लायंट इंटरफेस देते, ज्याखाली वेगवेगळ्या अंमलबजावणी आहेत. म्हणून प्रॉक्सी एंडपॉइंट बरोबर असला तरी निवडलेल्या अंमलबजावणीमुळे प्रॉक्सी पर्याय अयशस्वी होऊ शकतात.
HTTP क्लायंट दस्तऐवज SimpleAsyncHTTPClient ला डीफॉल्ट अंमलबजावणी म्हणून ओळखतात आणि curl-आधारित पर्यायाचे दस्तऐवजीकरण करतात. proxy_host सारख्या विनंती पर्यायांना अंमलबजावणी-विशिष्ट समर्थन टिपा असतात. fetch कॉलमध्ये पर्याय जोडण्यापूर्वी त्या टिपा वाचा.
क्लायंट तयार करण्यापूर्वी संरचीत करा
ज्या वातावरणात आधीच curl बॅकएंड आहे, तिथे अनुप्रयोग त्याचा सामायिक क्लायंट तयार करण्यापूर्वी तो निवडू शकतो:
from tornado.httpclient import AsyncHTTPClient
AsyncHTTPClient.configure('tornado.curl_httpclient.CurlAsyncHTTPClient')
client = AsyncHTTPClient()
नंतर इच्छित कॉलसाठी दस्तऐवजीकृत प्रॉक्सी होस्ट, पोर्ट, प्रमाणीकरण आणि टाइमआउट विनंती पर्याय वापरा. होस्टनाव संख्यात्मक पोर्टपासून वेगळे ठेवा. बॅकएंड निवडणे स्वतःच प्रॉक्सी एंडपॉइंट निवडत नाही. अनुमत सार्वजनिक HTTP मार्गासाठी HTTP प्रॉक्सी सूची त्या विनंती पर्यायांसाठी होस्ट आणि पोर्ट उमेदवार पुरवते.
क्लायंट तयार करणे महत्त्वाचे आहे कारण हा कोड चालण्यापूर्वी अनुप्रयोग किंवा फ्रेमवर्क HTTP क्लायंट तयार करून ठेवू शकतो. अयशस्वी विनंतीत वापरलेली प्रत्यक्ष इन्स्टन्स तपासा, नंतर दुसरा क्लायंट तयार करून तो पहिल्याचे स्पष्टीकरण देतो असे गृहीत धरण्याऐवजी.
निदानासाठी सक्रिय बॅकएंड आणि त्याच्या अंतर्निहित लायब्ररीची आवृत्ती अयशस्वी टप्प्यासह नोंदवा. असमर्थित विनंती पर्याय नेटवर्क टाइमआउट आणि प्रॉक्सीने परत दिलेल्या HTTP प्रतिसादापासून वेगळा ओळखा. ती निरीक्षणे वेगवेगळ्या दुरुस्तीकडे नेतात.