4 個用於託管開源庫的頂級 CDN 服務
CDN 或稱內容分發網路是位於世界各地的策略性放置的伺服器網路,用於更快地向用戶傳輸文件。傳統 CDN 能夠加速你的網站的圖像、CSS、JS 和任何其他靜態內容的訪問。它允許網站所有者加速自己的所有內容,並為他們提供額外的功能和配置選項,而這些高級服務通常需要根據項目使用的帶寬量進行支付。
但是,如果你的項目無法證明值得實施傳統 CDN ,那麼使用開源 CDN 可能更合適。通常這些類型的 CDN 能讓你鏈接到流行的 Web 庫(例如 CSS/JS 框架),可以讓你從免費的 CDN 伺服器上傳輸給你的訪問者。雖然開源庫的 CDN 服務不允許你將自己的內容上傳到伺服器,但它們可以幫助你加速全局庫並提高網站的冗餘性。
CDN 在龐大的伺服器網路上託管項目,因此網站維護者需要修改網站 HTML 代碼中的資源鏈接來反映開源 CDN 的URL,後面跟上資源路徑。根據你是否鏈接到 JavaScript 或 CSS 庫,鏈接將包含在 <script>
或 <link>
標籤中。
我們來探討開源庫的四大流行 CDN 服務。
JsDelivr
JsDelivr 是一個使用高級 CDN 提供商(KeyCDN、Stackpath、Cloudflare)的開源 CDN 提供者來分發開源項目資源。jsDelivr 的一些亮點包括:
- 支持 2100 多個庫
- 110 個接入點
- CDN 可在亞洲和中國使用
- 支持 API
- 沒有流量限制
- 完整的 HTTPS 支持
所有片段都以自定義 jsDelivr URL https://cdn.jsdelivr.net/ 開始,然後是項目名稱、版本號等。你還可以配置 jsDelivr 生成帶腳本標籤的 URL 並啟用 SRI(子資源完整性)以增加安全性。
Cdnjs
Cdnjs 是另一個流行的開源 CDN 提供者,類似於 jsDelivr。此服務還提供了一系列流行的 JavaScript 和 CSS 庫,你可以在 Web 項目中進行鏈接。 該服務由 CDN 提供商 Cloudflare 和 KeyCDN 贊助。cdnjs 的一些亮點包括:
- 支持 2900 多個庫
- 超過一百萬個網站使用
- 支持 HTTP/2
- 支持 HTTPS
與 jsDelivr 類似,使用 cdnjs,你也可以選擇使用或者不使用腳本標籤和 SRI 來複制資源 URL。
Google 託管庫
Google 託管庫網站允許你鏈接到託管在 Google 強大的開源 CDN 網路上的流行 JavaScript 庫。這個開源的 CDN 解決方案不提供像 jsDelivr 或 cdnjs 一樣多的庫或者功能。然而,當連接到 Google 託管庫時,你可以期待高度的可靠性和信任。Google 開源 CDN 的幾個亮點包括:
- HTTPS 支持
- 文件提供 CORS 和 Timing-Allow 頭
- 提供每個庫的最新版本
所有 Google 的託管庫文件都以URL https://ajax.googleapis.com/ 開頭,後跟項目的名稱、版本號和文件名。
Microsoft Ajax CDN
Microsoft Ajax CDN與 Google 託管庫非常類似,因為它只託管流行的庫。但是,將 Microsoft Ajax CDN 與 Google 託管庫區分開的兩個主要區別是 Microsoft 提供了 CSS 和 JS 庫,並且還提供了各種庫的各種版本。Microsoft Ajax CDN 的幾個亮點包括:
- HTTPS 支持
- 每個庫的以前版本通常都可用
所有的 Microsoft Ajax 文件都以 URL http://ajax.aspnetcdn.com/ajax/ 開頭,並且和其它文件一樣,後面是庫的名字,版本號等。
如果你的項目或網站尚未準備好利用優質的 CDN 服務,但你仍然希望加速網站的重要方面,那麼使用開源 CDN 是一個很好的解決方案。它能夠加速第三方庫的傳輸,否則它們將從原始伺服器發送,從而導致遠方用戶不必要的載入以及更慢的速度。
你喜歡使用哪個開源 CDN 提供商?為什麼?
(圖片版權:Open Clip Art Library,它明確將其公開於公共領域(見此處)。由 Jen Wike Huger 修改。)
作者簡介:
Cody Arsenault - Cody 熱衷於網路性能,SEO 以及創業活動。他是 KeyCDN 的網路性能倡導者,致力於使網路更快。
via: https://opensource.com/article/17/4/top-cdn-services
作者:Cody Arsenault 譯者:geekpi 校對:wxy
本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive