這個問題試圖找出它是否值得權衡CDN的好處,轉而採用更加結構化和組織化的供應商代碼管理。何時使用CDN進行主機,何時不使用?
我知道使用CDN提供像jquery這樣的供應商庫是推薦。
但是,我今天正在閱讀約bower,它讓我感到驚訝。藉助bower,我可以以非常有條理的方式輕鬆管理應用程序的所有依賴項。我最終可以將它們打包在單個vendor.js
文件中(使用yeoman,brunch或簡單grunt),該文件將作爲script
標記中的html服務器。
但是,雖然這種方法可以使我的生活更輕鬆,但它有什麼缺點?我可以想到以下幾點:
- 我很多使用的庫很可能已經被緩存在用戶的瀏覽器中。
- 通過將所有文件全部放在一個
vendor.js
文件中,瀏覽器最終將緩存該文件,但每當添加新的第三方依賴關係(即我的供應商文件發生更改時),我都會遇到問題。瀏覽器將重新加載該文件(從而失去原有的vendor.sj文件的緩存)
把這種方式,要在html來管理依賴關係<script>
標籤時,接縫處提供一個更好的性能/加載時間。
您認爲我的思維方式有問題嗎?說bower
組織代碼的好處,有說服力嗎?畢竟,它就像骨幹一樣。是的,骨幹應用對於小應用來說比較重,它包含更多的代碼......但從開發角度來看,它的價值!
乾杯(和感謝,讓我重新編輯的問題的意見!)
這是因爲其他有資格的人顯然不相信它是「要走的路」_。這類問題通常是不允許的,因爲它會引起強烈的意見。此外,儘管它「不具有建設性」,但它[已在此處多次討論](http://stackoverflow.com/search?q=CDN+good+idea&submit=search)。 – Sparky
查看jQuery標籤本網站的常見問題...頂級職位之一詳細介紹了這個主題http://stackoverflow.com/questions/1014203/best-way-to-use-googles-hosted-jquery-但落回至我的託管庫上去。對於你的問題,簡單的回答是CDN資源更有可能已經存在於用戶緩存中 – charlietfl
如果你問清楚具體的技術差異是什麼,這個問題可以改寫爲具有建設性,這樣你就可以做出自己的判斷呼叫,而不是問讓別人給你的。 – eh9