मैं धूमकेतु-आधारित एप्लिकेशन बनाना चाहता हूं और इसे 1000 समवर्ती कनेक्शन तक बनाए रखने में सक्षम होना चाहता हूं। जैसा कि मैं समझता हूं, टोरनाडो का प्रति अनुरोध एक थ्रेड को उत्पन्न करने का लाभ नहीं है जिससे इस प्रकार हजारों लंबे मतदान अनुरोधों को आसानी से संभालने की अनुमति मिलती है।क्या कोई ओपन सोर्स सी #-आधारित गैर-अवरुद्ध, टर्ननाडो जैसे ईवेंट-आधारित वेब सर्वर हैं?
उत्तर
मुझे लगता है कि Manos de Mono वह है जिसे आप ढूंढ रहे हैं। यह अभी भी बहुत जल्दी है, लेकिन आशाजनक लग रहा है।
क्या यह http://webserver.codeplex.com/ है, आप क्या देख रहे हैं?
एएसपी.नेट/आईआईएस के साथ लंबे मतदान अनुरोधों को संसाधित करने के लिए आप एक कस्टम HTTP हैंडलर को लागू करना चाहते हैं और IHttpAsyncHandler
लागू करना चाहते हैं। यह आपको एएसपी.NET कार्यकर्ता थ्रेड का उपयोग करने के अनुरोध को संसाधित करने की अनुमति देता है, और फिर प्रतिक्रिया को ट्रिगर करने के लिए किसी ईवेंट पर प्रतीक्षा करते समय थ्रेड को थ्रेड पूल में वापस कर देता है।
http://msdn.microsoft.com/en-us/library/ms227433.aspx
अतुल्यकालिक HTTP संचालकों (जैसे एक दूरस्थ सर्वर के लिए एक विधि कॉल के रूप में) एक बाहरी प्रक्रिया शुरू करने, जबकि हैंडलर प्रसंस्करण जारी है सक्षम बनाते हैं। बाहरी प्रक्रिया समाप्त होने की प्रतीक्षा किए बिना हैंडलर जारी रख सकता है।
एएसपी.नेट एमवीसी भी इस ढांचे के भीतर एसिंक्रोनस अनुरोध प्रसंस्करण को कार्यान्वित करने के लिए AsyncController
प्रदान करता है।
आप डॉट नेट बाइंडिंग के साथ Mongrel2 कोशिश कर सकते हैं। यह बहुत तेज़ भाषा अज्ञेयवादी वेब सर्वर है। यह शून्य एमक्यू के माध्यम से काम करता है।
मैं टोरनाडो के सीधी बंदरगाह पर सी # पर काम कर रहा हूं। यह अभी तक 100% नहीं है, लेकिन वहां जा रहा है।
क्या आपको डेस्कटॉप मशीन पर चलाने की सेवा की आवश्यकता है? आईआईएस विंडोज सर्वर के साथ आता है, और यह लोड को छोटे पैमाने पर संभालने में सक्षम होना चाहिए। –
क्या आईआईएस प्रत्येक HTTP अनुरोध के लिए धागा उत्पन्न करता है? जैसा कि मैं समझता हूं, यही कारण है कि टोर्नडो अपाचे की तुलना में लंबे मतदान प्रणाली के लिए अधिक उपयुक्त है। मुझे लगता है कि आईआईएस एक ही काम करता है। –
आईआईएस प्रत्येक HTTP अनुरोध, आकाश संख्या के लिए धागा नहीं फैलाता है। यह आईओ पूरा करने के बंदरगाहों का उपयोग करता है। –