2012-01-10 11 views
5

शायद एक अच्छा दस्तावेज़ है जो मेरी मदद करेगा। कृपया इसे इंगित करें।पायथन के लिए एक कठोर थ्रिफ्ट सर्वर को कैसे तैनात किया जाए?

यदि मैं पाइथन का उपयोग करके एक थ्रिफ्ट सर्वर लिखता हूं तो इसे उत्पादन वातावरण में तैनात करने का सबसे अच्छा तरीका क्या है? मैं जो कुछ पा सकता हूं वह पाइथन आधारित सर्वरों का उपयोग करने के उदाहरण हैं जो वितरण के साथ आते हैं। उदाहरण के लिए मैं अपाचे को सर्वर प्लेटफॉर्म के रूप में कैसे उपयोग कर सकता हूं? क्या यह लगातार कनेक्शन का समर्थन करेगा?

अग्रिम धन्यवाद।

उत्तर

1

मैंने पढ़ा है कि आप इसे थ्रिफ्ट सर्वर पर इंगित करने के लिए अपस्ट्रीम मॉड्यूल का उपयोग करके nginx के पीछे तैनात कर सकते हैं। आपके पास कम से कम एक सीपीयू कोर प्रति थ्रिफ्ट सर्वर होना चाहिए और सिस्टम के लिए एक छोड़ा जाना चाहिए (यानी यदि आप क्वाड-कोर पर हैं, तो आपको केवल 3 थ्रिफ्ट सर्वर चलाएंगे, जिससे सिस्टम के लिए एक छोड़ दिया जा सके)।

+0

आपने इसे कहां पढ़ा है, कृपया? –

+0

मुझे याद नहीं है, मैंने अभी इस पृष्ठ को बुकमार्क किया है: http://wiki.nginx.org/HttpUpstreamModule। मुझे लगता है कि मान लीजिए कि आप एक सिंगल थ्रेडेड सर्वर चला रहे हैं। यदि आप फोर्किंग/थ्रेडेड सर्वर का उपयोग करते हैं, तो आप वैसे भी अधिक क्लाइंट को संभाल सकते हैं। –

+0

मैं अपाचे जैसे कुछ का उपयोग करना चाहता हूं क्योंकि इसमें कुछ गलत होने पर थ्रेड और प्रक्रियाओं को पुनरारंभ करने के प्रावधान हैं। अपस्ट्रीम मॉड्यूल इस के साथ मदद नहीं करेगा, मुझे लगता है। अन्य विचार? –

1

मुझे लगता है कि आप पाइथन THttpServer का उपयोग कर रहे हैं? के लिए

1) कि कोड है कि पढ़ता

"" " इस वर्ग बहुत performant नहीं है में एक टिप्पणी भी नहीं है, लेकिन यह (उपयोगी है उदाहरण के लिए) एक नकली संस्करण के रूप में अभिनय: कुछ नोट अपाचे-आधारित PHP थ्रिफ्ट एंडपॉइंट का। ""

यदि आप प्रदर्शन की परवाह करते हैं तो आप इसे उत्पादन में उपयोग करने की अनुशंसा नहीं करेंगे। यदि आप इस कोड को थोड़ा सा पढ़ते हैं, तो आप पाएंगे कि यह आपके चयन के एक अलग HTTP सर्वर का उपयोग करके इसे फिर से कार्यान्वित करना काफी आसान है। पाइथन पारिस्थितिकी तंत्र में कई अच्छे विकल्प हैं।

2) यदि आप कोड पढ़ते हैं, तो आप पाएंगे कि थ्रिफ्ट HTTP सर्वर नियमित पुराने HTTP सर्वर हैं। वे सभी ट्रैफिक को एक ही पथ ('/' डिफ़ॉल्ट रूप से) पर स्वीकार करते हैं और संदेश को संदेश में एन्कोड किए गए रूटिंग जानकारी को पढ़कर उचित विधि को संदेश भेजते हैं (थ्रिफ्ट "प्रोसेसर" निर्माण का उपयोग करके)। आपको अपाचे/nginx/जो भी सामान्य तरीके से सेट अप करने में सक्षम होना चाहिए और मेजबान और पोर्ट पर सभी ट्रैफ़िक को '/' पर अग्रेषित करना चाहिए।

संबंधित मुद्दे