2012-04-24 21 views
9

मैंने Azure से सीडीएन के साथ काफी कुछ प्रयोग किया है, और मैंने सोचा कि मैं वेब-भूमिका का उपयोग करके सफल सेटअप के बाद घर सुरक्षित था।Azure सीडीएन का उपयोग कर प्रदर्शन गिरावट?

वेब-भूमिका क्यों?

ठीक है, मैं संपीड़न और कैशिंग हेडर के लाभ चाहता था जो मैं सामान्य ब्लॉब तरीके से उपयोग करने में असफल रहा। और एक अतिरिक्त बोनस के रूप में; केस-संवेदनशील बाधा भी समाप्त हो गई थी।

सीडीएन की पसंद के साथ पर्याप्त; जबकि पहले से ही सभी सामग्री एक ही डोमेन से परोसा गया था, अब मैं cdn.cuemon.net से सभी "स्थिर" सामग्री को कम या कम सेवा प्रदान करता हूं। सिद्धांत रूप में, यह प्रदर्शन में सुधार करना चाहिए क्योंकि ब्राउज़र समानांतर केवल एक डोमेन की तुलना में "एकाधिक" डोमेन पर सामग्री एकत्रण फैल सकता है।

C:\Windows\system32>tracert -d cdn.cuemon.net 

Tracing route to az162766.vo.msecnd.net [94.245.68.160] 
over a maximum of 30 hops: 

    1  1 ms  1 ms  1 ms 192.168.1.1 
    2 21 ms 21 ms 21 ms 87.59.99.217 
    3 30 ms 30 ms 31 ms 62.95.54.124 
    4 30 ms 29 ms 29 ms 194.68.128.181 
    5 30 ms 30 ms 30 ms 207.46.42.44 
    6 83 ms 61 ms 59 ms 207.46.42.7 
    7 65 ms 65 ms 64 ms 207.46.42.13 
    8 65 ms 67 ms 74 ms 213.199.152.186 
    9 65 ms 65 ms 64 ms 94.245.68.160 

C:\Windows\system32>tracert cdn.cuemon.net 

Tracing route to az162766.vo.msecnd.net [94.245.68.160] 
over a maximum of 30 hops: 

    1  1 ms  1 ms  1 ms 192.168.1.1 
    2 21 ms 22 ms 20 ms ge-1-1-0-1104.hlgnqu1.dk.ip.tdc.net [87.59.99.217] 
    3 29 ms 30 ms 30 ms ae1.tg4-peer1.sto.se.ip.tdc.net [62.95.54.124] 
    4 30 ms 30 ms 29 ms netnod-ix-ge-b-sth-1500.microsoft.com [194.68.128.181] 
    5 45 ms 45 ms 46 ms ge-3-0-0-0.ams-64cb-1a.ntwk.msn.net [207.46.42.10] 
    6 87 ms 59 ms 59 ms xe-3-2-0-0.fra-96cbe-1a.ntwk.msn.net [207.46.42.50] 
    7 68 ms 65 ms 65 ms xe-0-1-0-0.zrh-96cbe-1b.ntwk.msn.net [207.46.42.13] 
    8 65 ms 70 ms 74 ms 10gigabitethernet5-1.zrh-xmx-edgcom-1b.ntwk.msn.net [213.199.152.186] 
    9 65 ms 65 ms 65 ms cds29.zrh9.msecn.net [94.245.68.160] 

आप ऊपर निशान से देख सकते हैं:

दुर्भाग्य से इस प्रदर्शन में कमी जो मेरा मानना ​​है कि हॉब्स की संख्या के साथ क्या करना से पहले सामग्री की सेवा की जा रही है (एक TRACERT आदेश का उपयोग) है करने के लिए नेतृत्व किया है मार्ग, सभी बाहरी सामग्री काफी समय के लिए देरी हो रही है। यह ध्यान देने योग्य है कि Azure सेवा उत्तरी यूरोप में स्थापित है और मैं डेनमार्क में बस गया हूं, यह ट्रेस मार्ग थोड़ा सा क्यों है .. हम्म .. शीर्ष पर?

एक और मुद्दा हो सकता है कि वेब-भूमिका दो अतिरिक्त छोटे उदाहरण हैं; मुझे अभी तक दो छोटे उदाहरणों के साथ प्रयास करने का समय नहीं मिला है, लेकिन मुझे पता है कि माइक्रोसॉफ्ट अतिरिक्त छोटे उदाहरणों को 5 एमबी/एस वैन तक सीमित करता है जहां छोटे और ऊपर 100 एमबी/एस है।

मैं निश्चित रूप से अनिश्चित हूं अगर यह सीडीएन के लिए भी जाता है।

वैसे भी - किसी भी मदद और/या स्पष्टीकरण की सराहना की जाती है।

और मुझे यह बताने दो कि मैं एज़ूर मंच से बहुत संतुष्ट हूं - मैं उपरोक्त मामलों के संबंध में सिर्फ उत्सुक हूं।

अद्यतन

न्यू -d विकल्प के बिना tracert।

द्वारा user728584 प्रेरित होने के नाते मैं शोध किया और इस लेख, http://blogs.msdn.com/b/scicoria/archive/2011/03/11/taking-advantage-of-windows-azure-cdn-and-dynamic-pages-in-asp-net-caching-content-from-hosted-services.aspx, जो मैं सार्वजनिक कैश-नियंत्रण और CDN के संबंध में आगे की जांच करेंगे मिल गया है।

यह अत्यधिक होप्स गिनती घटना की व्याख्या नहीं करता है, लेकिन मुझे उम्मीद है कि एक कुशल नेटवर्क पेशेवर इस मामले को प्रकाश डालने में मदद कर सकता है।

बाकी आश्वासन दिया है कि मैं आपको अपने निष्कर्षों के अनुसार पोस्ट रखूंगा।

+1

तो क्या आपकी वेब भूमिका सीडीएन से डेटा खींच रही है और इसे उपयोगकर्ता को दे रही है या आपकी वेब भूमिका केवल HTTP पृष्ठों को वितरित कर रही है और उपयोगकर्ता का ब्राउज़र सीडीएन से स्थिर सामग्री का अनुरोध कर रहा है? –

+0

वेब-रोल में एकमात्र चीज मैं एएसपी.NET जीवन चक्र में उचित घटना पर हुक करना है; यह उपयुक्त कैशिंग हेडर और संपीड़न जोड़ देगा, जहां सभी सामग्री/cdn फ़ोल्डर से "परोसा जाता है"। –

+0

कूल, मुझे बहुत दिलचस्पी है, अपडेट के लिए तत्पर हैं! – user728584

उत्तर

5

स्पष्ट नहीं बताएं लेकिन मुझे लगता है कि आपने कैश-कंट्रोल HTTP शीर्षलेख को बड़ी संख्या में सेट किया है, क्योंकि आपकी सामग्री को सीडीएन कैश से हटाया नहीं जा रहा है और जब आपने अपने ट्रैकर्ट परीक्षण किए हैं तो ब्लॉब स्टोरेज से परोसा जा रहा है?

काफी कुछ बढ़त सर्वरों हैं पास तो मैं यह बेहतर प्रदर्शन की उम्मीद करेंगे: 'विंडोज Azure CDN नोड स्थान' http://msdn.microsoft.com/en-us/library/windowsazure/gg680302.aspx

मार्टेन Balliauw CDN के लिए उपयोग और उपयोग के मामलों पर एक बड़ा लेख (है यह मदद कर सकता है): http://acloudyplace.com/2012/04/using-the-windows-azure-content-delivery-network/

सुनिश्चित नहीं हैं कि अगर सब पर मदद करता है, दिलचस्प ...

+0

अनुमोदित, मुझे अपने कैश कंट्रोल हेडर पर जांच करने की ज़रूरत है, क्योंकि मुझे विश्वास है कि मैं प्रॉक्सी कैशिंग (डूह!) स्वीकार नहीं करता हूं। कोई भी कम नहीं; हॉप गिनती अभी भी परेशान है - और प्रतिक्रिया समय पीआर। हॉप। मैं आपके लेखों की जांच करूंगा - साझा करने के लिए धन्यवाद, दोस्त। –

+0

ठीक है, मैंने अब अपने सीडीएन को कैश-कंट्रोल सेट के साथ सार्वजनिक रूप से अपडेट किया है। 'HTTP/1.1 200 ठीक कैश-नियंत्रण:: सार्वजनिक, must-पुनः सत्यापित, कोई रूपांतरण नहीं, अधिकतम उम्र = 604,800 सामग्री प्रकार: आवेदन/x-जावास्क्रिप्ट स्वीकार करें-सीमाओं तुम मेरे यहाँ हेडर देख सकते हैं : बाइट्स ETag: "2036992d85fc262d9ae5dbdfd7a1eb4a" सर्वर: माइक्रोसॉफ्ट आईआईएस/7.0 एक्स संचालित-द्वारा: ASP.NET सामग्री-लंबाई: 1376 उम्र: 371 दिनांक: गुरु, 26 अप्रैल 2012 22:15:44 GMT अंतिम संशोधित: मंगलवार, 03 अप्रैल 2012 00:09:19 जीएमटी समाप्त हो जाता है: गुरु, 03 मई 2012 22:09:34 जीएमटी कनेक्शन: जीवित रहें आप देख सकते हैं, मैं def 1 सप्ताह कैशिंग के लिए उत्साह और "दृश्य-स्रोत" के मामले में 304 वापस भेज दें। –

+0

इस परिवर्तन के बाद मैं अपनी http://www.cuemon.net/ वेबसाइट पर नजर रखूंगा; Azure सीडीएन के संबंध में, फाइल _should_ अब 7 दिनों के लिए "प्रॉक्सी" छोड़ा जा सकता है। –

4

ठीक है, के बाद मैं सार्वजनिक कैशिंग नियंत्रण हेडर लागू किया था, CDN क्या उम्मीद है करने के लिए प्रकट होता है; सीडीएन क्लस्टर में एक्स-संख्या के नोड्स से सामग्री वितरित करना।

उपरोक्त में यह बाधा है कि यह अनुभव किया गया है - इसे ठोस सत्यापन के लिए मापा नहीं जाता है।

हालांकि, इस लिंक मेरी सिद्धांत का समर्थन: http://msdn.microsoft.com/en-us/wazplatformtrainingcourse_windowsazurecdn_topic3,

टाइम-टू-लिव (TTL) कितनी देर तक एक CDN किनारे सर्वर अनुरोध करने से पहले कैश की गई संसाधन की एक प्रतिलिपि रिटर्न के लिए एक ब्लॉब नियंत्रण के लिए सेटिंग ब्लॉब स्टोरेज में इसके स्रोत से एक ताजा प्रति। एक बार यह अवधि समाप्त होने के बाद, एक नया अनुरोध सीडीएन सर्वर को मूल ब्लॉब से फिर से संसाधन पुनर्प्राप्त करने के लिए मजबूर करेगा, जिस बिंदु पर यह इसे फिर से कैश करेगा

मेरी धारणा चुनौती कौन सा थी; सीडीएन संदर्भित संसाधनों ने मूल ब्लॉब को पूल करना जारी रखा।

इसके अलावा, क्रेडिट भी इस लिंक को दिया जाना चाहिए (उपयोगकर्ता 728584 द्वारा दिया गया); http://blogs.msdn.com/b/scicoria/archive/2011/03/11/taking-advantage-of-windows-azure-cdn-and-dynamic-pages-in-asp-net-caching-content-from-hosted-services.aspx

और अब के लिए अंतिम कड़ी: http://blogs.msdn.com/b/windowsazure/archive/2011/03/18/best-practices-for-the-windows-azure-content-delivery-network.aspx

ASP.NET पृष्ठों के लिए, डिफ़ॉल्ट व्यवहार निजी करने के लिए कैश नियंत्रण स्थापित करने के लिए है। इस मामले में, विंडोज़ एज़ूर सीडीएन इस सामग्री को कैश नहीं करेगा। इस व्यवहार को ओवरराइड करने के लिए, डिफ़ॉल्ट कैश नियंत्रण सेटिंग्स को बदलने के लिए प्रतिक्रिया ऑब्जेक्ट का उपयोग करें।

तो इस छोटी पहेली के लिए अब तक मेरा निष्कर्ष यह है कि आपको अपने कैश-कंट्रोल पर ध्यान देना होगा (जो अक्सर स्पष्ट कारणों से निजी पर सेट होता है)। यदि आप वेब-रोल दृष्टिकोण छोड़ते हैं, तो टीटीएल प्रति डिफ़ॉल्ट 72 घंटे है, आप कभी अनुभव नहीं कर सकते हैं कि मैंने अनुभव किया है; इसलिए यह सिर्फ बॉक्स के बाहर काम करेगा।

उपयोगकर्ता 728584 को सही दिशा में इंगित करने के लिए धन्यवाद।

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