2012-11-14 43 views
13

हम नए ASP.NET MVC 4 की सुविधा bundling जांच कर रहे हैं और सोच रहे हैं कि अगर वहाँ bundling सीएसएस फ़ाइलें कि एक CDN से सेवा कर रहे हैं के लिए किसी भी लाभ हैं?बंडल एकाधिक सीएसएस एक सीडीएन से सेवारत?

क्या एएसपी.नेट एमवीसी 4 में सीडीएन से सेवा की गई कई फाइलों को बंडल करने का कोई तरीका है? यह काम नहीं करता है:

var cdnCssPath = "http://MyCdn/css/";  
bundles.Add(new StyleBundle("~/Content/css", cdnCssPath) 
      .Include("~/Content/site.css") 
      .Include("~/Content/Test1.css") 
      .Include("~/Content/Test2.css") 
      .Include("~/Content/Test3.css") 
      ); 

कोई विचार?

+0

मैं वही चीज़ देख रहा हूं लेकिन इसे प्राप्त करने के लिए वैसे भी नहीं मिला है। हम वर्तमान में तालिफ़ुन स्क्रिप्ट कोल्हू का उपयोग करते हैं, लेकिन ऐसा लगता है कि सीडीएन समर्थन एक समूह पर किया जाता है, प्रति फ़ाइल नहीं। मुझे लगता है कि यह समझ में आता है क्योंकि अलग-अलग सीडीएन आधारित फ़ाइलों को एक फ़ाइल में बंडल करने का कोई सीधा तरीका नहीं है। – Leather

+0

@ केन बुर्कहार्ट मेरे पास एक ही सवाल है कि सीडीएन का उपयोग करके एकाधिक सीएसएस लोड कैसे कर सकते हैं, क्या आपको इसके बारे में कोई जानकारी है तो कृपया मुझे बताएं? – coderwill

उत्तर

20

सबसे पहले यह इस बात पर निर्भर करता है कि आपके पास सीडीएन तक पहुंच है, जहां आप अपनी फाइलें अपलोड कर सकते हैं या यदि आप इसका उपयोग कर रहे हैं, उदाहरण के लिए, jQuery की बाहरी पुस्तकालयों को प्राप्त करने के लिए Google की सीडीएन।

यदि आप सीडीएन से फ़ाइलों को खींचते हैं और उन्हें बंडल करते हैं, तो आप सीडीएन का उपयोग करने का लाभ खो देंगे जबतक कि आप अपनी नई बंडल फ़ाइल को सीडीएन में अपलोड नहीं कर पा रहे हैं।

उदाहरण के लिए यदि आप Google के सीडीएन से jQuery और jQuery UI प्राप्त करते हैं और उन्हें बंडल करते हैं, तो आप अब Google के सीडीएन का उपयोग नहीं कर रहे हैं, आप स्थानीय संसाधनों (निर्मित बंडल) की सेवा कर रहे हैं। आपने अनुरोधों की संख्या कम कर दी है, लेकिन 2 अनुरोधों के बजाय Google की सीडीएन (जिसमें उपयोगकर्ता ब्राउज़र द्वारा पहले से ही कैश किया जाने की उच्च संभावना है) आपके सर्वर पर एक अनुरोध है (जो कैश होने की संभावना नहीं है)।

तो संक्षेप में मैं कहूंगा कि एक सीडीएन से आने वाली फ़ाइलों को बंडल करने का कोई फायदा नहीं है, हालांकि सीडीएन में आपकी बंडल फ़ाइलों को अपलोड करना अलग-अलग कहानी है।

ध्यान दें है कि यह हालांकि बंडलों के लिए उपयोग CDN उपयोग करना संभव है: के this article

संपादित करें "का उपयोग करते हुए एक CDN" भाग में देखो: यहाँ एक लेख में बताया गया है कि जब एक CDN या नहीं और क्यों उपयोग करने के लिए है , मेरे उत्तर से थोड़ा अधिक indepth http://www.kendoui.com/blogs/teamblog/posts/13-11-07/know-when-to-cdn.aspx

+1

जो लेख मैं उससे जुड़ा हुआ लेख पढ़ने से कह सकता हूं; ऐसा लगता है कि यदि आपके पास बंडल एक सीडीएन को इंगित करता है तो आपके पास केवल आपके फ़ाइल में एक फ़ाइल हो सकती है। निश्चित रूप से यहां एक व्यापार-बंद प्रतीत होता है: सीडीएन की कैशिंग \ उपलब्धता बनाम एकाधिक फाइलों को बंडल करके आप HTTP अनुरोधों की संख्या कम कर सकते हैं .... मेरे लिए यह स्पष्ट नहीं है कि जाने का सबसे अच्छा तरीका !! – nixon