2008-09-15 15 views
102

मैं ब्राउज़र के अंदर जीमेल जैसी मैसेजिंग को लागू करने के तरीकों को देख रहा हूं, और Comet अवधारणा पर पहुंचा। हालांकि, मैं एक अच्छा .NET कार्यान्वयन नहीं ढूंढ पाया है जो मुझे आईआईएस के भीतर ऐसा करने की अनुमति देता है (हमारा आवेदन एएसपी.नेट 2.0 में लिखा गया है)।एएसपी.नेट के लिए धूमकेतु कार्यान्वयन?

मेरे द्वारा प्राप्त किए गए समाधान (या उस मामले के बारे में सोच सकते हैं) के लिए एक उपयोगकर्ता को चलने वाले थ्रेड को छोड़ने की आवश्यकता होती है - ताकि वह संदेश प्राप्त करने के बाद उसे प्रतिक्रिया दे सके। यह निश्चित रूप से बिल्कुल पैमाने पर नहीं है।

तो मेरा सवाल है - क्या आप धूमकेतु के लिए एएसपी.NET कार्यान्वयन के बारे में जानते हैं जो एक अलग तरीके से काम करता है? क्या आईआईएस के साथ भी यह संभव है?

+12

मुझे लगता है कि प्रारंभिक MS-धन्य कार्यान्वयन SignalR है: http://www.hanselman.com/blog/AsynchronousScalableWebApplicationsWithRealtimePersistentLongrunningConnectionsWithSignalR.aspx – user423430

+0

Node.js अब Azure पर समर्थित है, जल्द ही समर्थन किया जाएगा, 2003 को IIS। इसका मतलब है कि हम आईआईएस के भीतर धूमकेतु सर्वर चलाने में सक्षम होंगे (http://www.windowsazure.com/en-us/develop/nodejs/) – LamonteCristo

उत्तर

44

धूमकेतु की धूमकेतु की लगातार कनेक्टिविटी की वजह से धूमकेतु आईआईएस के साथ स्केल करने के लिए चुनौतीपूर्ण है, लेकिन अब धूमकेतु परिदृश्य देखने वाली एक टीम है। Aaron Lerch's blog पर भी देखें क्योंकि मुझे विश्वास है कि उसने एएसपी.नेट में कुछ शुरुआती धूमकेतु काम किया है।

+9

यह वास्तव में लागू किया गया है; नीचे एंटोन की प्रतिक्रिया प्रति WebSync देखें। (http://www.frozenmountain.com/websync/) – jvenema

+3

क्या किसी को रिवर्स AJAX कहा जाता है? इसे देखें: http://pokein.codeplex.com – Zuuum

+4

एमवीसी असिंक नियंत्रक गैर आईआईएस कार्यकर्ता धागे की प्रतीक्षा को ऑफ़लोड करके आईआईएस समस्याओं से लड़ने में मदद कर सकते हैं, यह देखें [क्ले Lenhart द्वारा महान पोस्ट] (http: //clay.lenharts .net/ब्लॉग/2010/10/19/WebSockets-है-शांत बल्कि क्या-कर सकते हैं-आप करते हैं-आज)। बिटबकेट पर [चैट सर्वर उदाहरण परियोजना] (https://bitbucket.org/jacob4u2/mvcchatsite/src) भी देखें। – Jacob

0

मुझे लगता है कि धूमकेतु दृष्टिकोण वास्तव में स्केलेबल नहीं है जब तक आप क्षैतिज रूप से वेब खेत का विस्तार करने के लिए तैयार नहीं होते हैं (मिश्रण में अधिक वेब सर्वर जोड़कर)। जिस तरह से यह काम करता है वह यह है कि यह प्रति उपयोगकर्ता सत्र में एक टीसीपी कनेक्शन खुलता है, बस सर्वर समय-समय पर उस कनेक्शन में सामग्री को किसी बदलाव या गतिविधि के उपयोगकर्ता को सूचित करने के लिए पुश कर सकता है।

+6

सब कुछ केवल एक बिंदु के लिए लंबवत स्केलेबल है, जिसके बाद क्षैतिज स्केलिंग लेनी है जगह। – Anton

3

तुम भी Kaazing Enterprise Gateway जो जो धूमकेतु तरह से पूरी तरह से प्रतिस्थापित करता है और ब्राउज़र & आवेदन सर्वर के बीच पूर्ण द्वैध कनेक्शन सक्षम उनके WebSocket [एचटीएमएल 5] प्रवेश द्वार का उत्पादन रिहाई बना दिया है पर लग सकता है।

तुम भी Light Streamer Demos

33

WebSync पर लग सकता है मानकों का अनुपालन करने स्केलेबल धूमकेतु सर्वर है कि आईआईएस/नेट पाइप लाइन में सीधे एकीकृत करता है। यह एक होस्टेड सेवा के रूप में मांग पर भी उपलब्ध है।

यह आधिकारिक तौर पर प्रति सर्वर नोड के 20,000 समवर्ती ग्राहक कनेक्शन का समर्थन करता है, लेकिन व्यक्तिगत परीक्षणों ने इसे 50,000 के रूप में उच्च देखा है। संदेश थ्रुपुट 1,000-5,000 समवर्ती ग्राहकों के निशान के आसपास इष्टतम है, जिसमें एक एकल नोड से 300,000 प्रति सेकंड के रूप में उच्च संदेश भेजे जाते हैं।

इसमें जावास्क्रिप्ट, .NET/मोनो, आईओएस, मैक ओएस एक्स, जावा, सिल्वरलाइट, विंडोज फोन, विंडोज रनटाइम और .NET कॉम्पैक्ट के लिए क्लाइंट-साइड समर्थन शामिल है, .NET/Mono के लिए सर्वर-साइड समर्थन के साथ और पीएचपी।

क्लस्टरिंग को SQL सर्वर या Azure कैशिंग का उपयोग करके बॉक्स के बाहर समर्थित है, लेकिन कस्टम प्रदाताओं को कुछ भी (रेडिस, एनसीएसी) के लिए लिखा जा सकता है।

अस्वीकरण: मैं इस उत्पाद को विकसित करने वाली कंपनी के लिए काम करता हूं।

+16

यहां आपके अस्वीकरण के रूप में एक अस्वीकरण होना चाहिए ... –

+9

निश्चित रूप से, यह उस कंपनी द्वारा उत्पादित किया गया है जिसके लिए मैं काम करता हूं :) निश्चित रूप से कुछ भी छिपाने की कोशिश नहीं कर रहा है। – Anton

+1

@ एंटन - कुछ छुपा नहीं करना इसे प्रकट करने जैसा नहीं है। – RedFilter

1

मैंने एक बार पहले एक चैट साइट का उपयोग किया था जो एक कस्टम निर्मित http स्ट्रीमिंग सर्वर का उपयोग करता था। मैंने वास्तव में उस जिज्ञासा को जिज्ञासा से एक बिंदु पर पुन: उत्पन्न किया, और ऐसा करना आसान है, मुझे लगता है। मैं कभी भी आईआईएस में एक समान प्रकार के "अनंत अनुरोध" को लागू करने की कोशिश नहीं करता, खासकर एएसपी.नेट में, क्योंकि अनुरोधों को थ्रेड पूल थ्रेड (या आईओ थ्रेड, अगर असिंक्रोनस हैंडलर का उपयोग किया जाता है) को अनिश्चित काल तक बांधते हैं, जिसका मतलब है कि आप केवल अपने थ्रेड पूल कॉन्फ़िगरेशन की अनुमति के रूप में प्रति सर्वर इतना संभाल लें।

यदि मेरे पास ऐसी कार्यक्षमता के लिए एक मजबूत वैध आवश्यकता है, तो मैं ईमानदारी से इसके लिए एक कस्टम http सर्वर लिखूंगा।

मुझे पता है कि वास्तव में आपके प्रश्न का उत्तर नहीं देता है, लेकिन मैंने सोचा कि इनपुट प्रासंगिक हो सकता है।

4

असल में वहाँ कई विकल्प ASP.NET के साथ ajax समर्थित वेबसाइट बनाने के लिए कर रहे हैं, लेकिन ईमानदारी से, PokeIn एक धूमकेतु ajax समर्थित वेब अनुप्रयोग बनाने के लिए सबसे आसान तरीका है। इसने मेरी कंपनी की परियोजनाओं में से एक को बचा लिया है।

15

मैं हाल ही में लिखा था एक great article by Clay Lenhart

के आधार पर एक simple example of a Long Polling Chat Server का उपयोग कर MVC 3 Async नियंत्रकों आप उपयोग कर सकते हैं example on a AppHarbor deployment मैं BitBucket परियोजना से स्रोत के आधार पर की स्थापना की।

इसके अलावा, मेरे blog post explaining the project से अधिक जानकारी उपलब्ध है।

+0

मुझे ऐपहार्बर परिनियोजन – guaike

+0

'प्रोजेक्ट समझाते हुए ब्लॉग पोस्ट' पर उदाहरण पसंद है -> https://web.archive.org/web/20130328042214/http://jacob4u2.posterous.com/mvc-3-long- मतदान-धूमकेतु-चैट-उदाहरण – jaybro

1

WS-I समूह कुछ "Reliable Secure Profile" कहा जाता है कि एक ग्लास मछली और है .NET implementation कि जाहिरा तौर पर inter-operate अच्छी तरह से प्रकाशित किया।

किसी भी भाग्य के साथ वहां Javascript कार्यान्वयन भी है।

एक सिल्वरलाइट कार्यान्वयन भी है जो HTTP Duplex. का उपयोग करता है आप पुश होने पर कॉलबैक प्राप्त करने के लिए connect javascript to the Silverlight ऑब्जेक्ट कर सकते हैं।

commercial paid versions भी हैं।

+4

लघु उत्तराधिकार में कई प्रश्नों पर सटीक वही उत्तर पोस्ट करना कुछ झंडे की यात्रा करता है ... –

+2

([psst] (http://meta.stackexchange.com/questions/ 88,078/क्या से करने के बारे में-इन-जवाब-ड्यूप्स)) – Will

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