4 个用于托管开源库的顶级 CDN 服务
CDN

> 
> 内容分发网络可以加速你的网站图片、CSS、JS、以及其他静态内容。
> 
> 
> 


![Top 4 CDN services for hosting open source libraries](/data/attachment/album/201706/01/000849ptbbnvu9hkpbtpt1.jpg "Top 4 CDN services for hosting open source libraries")


CDN 或称内容分发网络是位于世界各地的策略性放置的服务器网络，用于更快地向用户传输文件。传统 CDN 能够加速你的网站的图像、CSS、JS 和任何其他静态内容的访问。它允许网站所有者加速自己的所有内容，并为他们提供额外的功能和配置选项，而这些高级服务通常需要根据项目使用的带宽量进行支付。


但是，如果你的项目无法证明值得实施传统 CDN ，那么使用开源 CDN 可能更合适。通常这些类型的 CDN 能让你链接到流行的 Web 库（例如 CSS/JS 框架），可以让你从免费的 CDN 服务器上传输给你的访问者。虽然开源库的 CDN 服务不允许你将自己的内容上传到服务器，但它们可以帮助你加速全局库并提高网站的冗余性。


CDN 在庞大的服务器网络上托管项目，因此网站维护者需要修改网站 HTML 代码中的资源链接来反映开源 CDN 的URL，后面跟上资源路径。根据你是否链接到 JavaScript 或 CSS 库，链接将包含在 `<script>` 或 `<link>` 标签中。


我们来探讨开源库的四大流行 CDN 服务。


### JsDelivr


[JsDelivr](http://www.jsdelivr.com/) 是一个使用高级 CDN 提供商（KeyCDN、Stackpath、Cloudflare）的开源 CDN 提供者来分发开源项目资源。jsDelivr 的一些亮点包括：


* 支持 2100 多个库
* 110 个接入点
* CDN 可在亚洲和中国使用
* 支持 API
* 没有流量限制
* 完整的 HTTPS 支持


所有片段都以自定义 jsDelivr URL <https://cdn.jsdelivr.net/> 开始，然后是项目名称、版本号等。你还可以配置 jsDelivr 生成带脚本标签的 URL 并启用 SRI（子资源完整性）以增加安全性。


### Cdnjs


[Cdnjs](https://cdnjs.com/) 是另一个流行的开源 CDN 提供者，类似于 jsDelivr。此服务还提供了一系列流行的 JavaScript 和 CSS 库，你可以在 Web 项目中进行链接。 该服务由 CDN 提供商 Cloudflare 和 [KeyCDN](https://www.keycdn.com/) 赞助。cdnjs 的一些亮点包括：


* 支持 2900 多个库
* 超过一百万个网站使用
* 支持 HTTP/2
* 支持 HTTPS


与 jsDelivr 类似，使用 cdnjs，你也可以选择使用或者不使用脚本标签和 SRI 来复制资源 URL。


### Google 托管库


[Google 托管库](https://developers.google.com/speed/libraries/)网站允许你链接到托管在 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](https://www.asp.net/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](https://en.wikipedia.org/wiki/Open_Clip_Art_Library)，它明确将其公开于**[公共领域](https://en.wikipedia.org/wiki/public_domain)**（[见此处](https://openclipart.org/share)）。由 Jen Wike Huger 修改。）




---


作者简介：


Cody Arsenault - Cody 热衷于网络性能，SEO 以及创业活动。他是 KeyCDN 的网络性能倡导者，致力于使网络更快。




---


via: <https://opensource.com/article/17/4/top-cdn-services>


作者：[Cody Arsenault](https://opensource.com/users/codya) 译者：[geekpi](https://github.com/geekpi) 校对：[wxy](https://github.com/wxy)


本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译，[Linux中国](https://linux.cn/) 荣誉推出


OK
A CDN, or content delivery network, is a network of strategically placed servers located around the world used for the purpose of delivering files faster to users. A traditional CDN will allow you to accelerate your website's images, CSS files, JS files, and any other piece of static content. This allows website owners to accelerate all of their own content as well as provide them with additional features and configuration options. These premium services typically require payment based on the amount of bandwidth a project uses.

However, if your project doesn't justify the cost of implementing a traditional CDN, the use of an open source CDN may be more suitable. Typically, these types of CDNs allow you to link to popular web-based libraries (CSS/JS frameworks, for example), which are then delivered to your web visitors from the free CDN's servers. Although CDN services for open source libraries do not allow you to upload your own content to their servers, they can help you accelerate libraries globally and improve your website's redundancy.

CDNs host projects on a vast network of servers, so website maintainers need to modify their asset links in the website's HTML code to reflect the open source CDN's URL followed by the path to the resource. Depending upon whether you're linking to a JavaScript or CSS library, the links you'll include will live in either a <script> or <link> tag.

Let's explore four popular CDN services for open source libraries.

## JsDelivr

[JsDelivr](http://www.jsdelivr.com/) is an open source CDN provider that uses the networks of premium CDN providers (KeyCDN, Stackpath, and Cloudflare) to deliver open source project assets. A few highlights of jsDelivr include:

- Search from over 2,100 libraries
- 110 POP locations
- CDN is accessible in Asia and China
- API support
- No traffic limits
- Full HTTPS support

All snippets start off with the custom jsDelivr URL [https://cdn.jsdelivr.net/](https://cdn.jsdelivr.net/), and are then followed by the name of the project, version number, etc. You can also configure jsDelivr to generate the URL with the script tags and enable SRI (subresource Integrity) for added security.

**Cdnjs**

[Cdnjs](https://cdnjs.com/) is another popular open source CDN provider that's similar to jsDelivr. This service also offers an array of popular JavaScript and CSS libraries that you can choose from to link within your web project. This service is sponsored by CDN providers Cloudflare and [KeyCDN](https://www.keycdn.com/). A few highlights of cdnjs include:

- Search from over 2,900 libraries
- Used by over 1 million websites
- Supports HTTP/2
- Supports HTTPS

Similar to jsDelivr, with cdnjs you also have the option to simply copy the asset URL with or without the script tag and SRI.

## Google Hosted Libraries

The [Google's Hosted Libraries](https://developers.google.com/speed/libraries/) site allows you to link to popular JavaScript libraries that are hosted on Google's powerful open source CDN network. This open source CDN solution doesn't offer as many libraries or features as jsDelivr or cdnjs; however, a high level of reliability and trust can be expected when linking to Google's Hosted Libraries. A few highlights of Google's open source CDN include:

- HTTPS support
- Files are served with CORS and Timing-Allow headers
- Offers the latest version of each library

All of Google's Hosted libraries files start with the URL [https://ajax.googleapis.com/](https://ajax.googleapis.com/), and are followed by the project's name, version number, and file name.

## Microsoft Ajax CDN

The [Microsoft Ajax Content Delivery Network](https://www.asp.net/ajax/cdn) is quite similar to Google's Hosted Libraries in that it only hosts popular libraries. However, two major differences that separate Microsoft Ajax CDN from Google's Hosted Libraries are that Microsoft provides both CSS as well as JS libraries and also offers various versions of each library. A few highlights of the Microsoft Ajax CDN include:

- HTTPS support
- Previous versions of each library are often available

All Microsoft Ajax files begin with the URL [http://ajax.aspnetcdn.com/ajax/](http://ajax.aspnetcdn.com/ajax/), and like the others, are followed by the library's name, version number, etc.

If your project or website isn't ready to take advantage of a premium CDN service, but you would still like to accelerate vital aspects of your site, then using an open source CDN can be a great solution. They allow you to accelerate the delivery of third-party libraries that would otherwise be delivered from your origin server causing unnecessary load and slower speeds for distant users.

*Which open source CDN provider do you prefer to use and why?*

## Comments are closed.