2012-11-10 59 views
14

這個問題試圖找出它是否值得權衡CDN的好處,轉而採用更加結構化和組織化的供應商代碼管理。何時使用CDN進行主機,何時不使用?


我知道使用CDN提供像jquery這樣的供應商庫是推薦。

但是,我今天正在閱讀約bower,它讓我感到驚訝。藉助bower,我可以以非常有條理的方式輕鬆管理應用程序的所有依賴項。我最終可以將它們打包在單個vendor.js文件中(使用yeoman,brunch或簡單grunt),該文件將作爲script標記中的html服務器。

但是,雖然這種方法可以使我的生活更輕鬆,但它有什麼缺點?我可以想到以下幾點:

  • 我很多使用的庫很可能已經被緩存在用戶的瀏覽器中。
  • 通過將所有文件全部放在一個vendor.js文件中,瀏覽器最終將緩存該文件,但每當添加新的第三方依賴關係(即我的供應商文件發生更改時),我都會遇到問題。瀏覽器將重新加載該文件(從而失去原有的vendor.sj文件的緩存)

把這種方式,要在html來管理依賴關係<script>標籤時,接縫處提供一個更好的性能/加載時間。

您認爲我的思維方式有問題嗎?說bower組織代碼的好處,有說服力嗎?畢竟,它就像骨幹一樣。是的,骨幹應用對於小應用來說比較重,它包含更多的代碼......但從開發角度來看,它的價值!

乾杯(和感謝,讓我重新編輯的問題的意見!)

+0

這是因爲其他有資格的人顯然不相信它是「要走的路」_。這類問題通常是不允許的,因爲它會引起強烈的意見。此外,儘管它「不具有建設性」,但它[已在此處多次討論](http://stackoverflow.com/search?q=CDN+good+idea&submit=search)。 – Sparky

+0

查看jQuery標籤本網站的常見問題...頂級職位之一詳細介紹了這個主題http://stackoverflow.com/questions/1014203/best-way-to-use-googles-hosted-jquery-但落回至我的託管庫上去。對於你的問題,簡單的回答是CDN資源更有可能已經存在於用戶緩存中 – charlietfl

+0

如果你問清楚具體的技術差異是什麼,這個問題可以改寫爲具有建設性,這樣你就可以做出自己的判斷呼叫,而不是問讓別人給你的。 – eh9

回答

5

使用CDN時提供給您,並通過您的項目要求允許的。它通常更快,瀏覽器可能已經緩存來自其他網站的文件。

我構建的大多數站點都使用CDN中的jQuery。但是,您會發現有時候這些CDN被特定國家阻止。無論如何,它有一個回退並沒有傷害。你可以從CDN加載jQuery,如果失敗則回退到你自己的服務器。

相關問題