为什么UNPKG可以免费使用,如果我过度使用会怎样?

Why UNPKG is free to use, and what will happen if I overuse?

我知道 UNPKG 快速、可靠且免费使用,但如果我过度使用它会怎样?

例如,我可以使用 rollup instead of webpack to bundle my entire website as UMD build to a single JS, and publish it as a NPM package, and if I use React or Vue 或任何其他 SPA 方法,我需要将 HTML 标记发送到生产环境的是这段最少的代码:

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <meta http-equiv="X-UA-Compatible" content="ie=edge" />
    <title>My Website</title>
    <script src="https://unpkg.com/my-whole-website-umd"></script>
  </head>
  <body>
    <div id="root"></div>
  </body>
</html>

UNPKG 甚至帮助我获取最新版本,这意味着如果我将新包发布到 NPM,我正在生产的整个网站都会更新:

<!-- this will always be the latest -->
<script src="https://unpkg.com/my-whole-website-umd"></script>

人们可以通过使用这种方法节省数千服务器维护费用。

为什么UNPKG还能免费?

它最初是一个有趣的项目,后来发展成为一个有很多人使用的流行服务。一些大公司依附于这个项目并捐赠他们的服务,将来可能会有更多的公司这样做。随着未来战略的改变,他们可能会撤回捐款。目前它是免费的。如果捐助者退出,它可能会出现故障或更频繁地响应 500 个错误或变成付费服务。

这不是一种严格可靠的服务,因为您可以通过付费 CDN 获得它。 但因为它是免费的,所以严格来说并不可靠,如果资金、捐赠服务或动力用完,它可能会在一夜之间倒闭。适合业余爱好或低流量项目,但根据此博客,不要依赖它来完成关键任务。

https://kentcdodds.com/blog/unpkg-an-open-source-cdn-for-npm

unpkg is great for open source project demos and instructional material (I use it heavily in my Beginner's Guide to ReactJS), but it's not well suited for mission-critical applications at scale because:

unpkg is a free, best-effort service and cannot provide any uptime or support guarantees.

That's why Michael recommends:

if you rely on it to serve files that are crucial to your business, you should probably pay for a host with well-supported infrastructure and uptime guarantees.

Cloudflare 的慷慨捐赠使该项目成为可能,Cloudflare 通过其世界-class CDN 和 Google Cloud 为我们提供 99% 的流量,并将资源捐赠给运行 我们的后端基础设施。

Taken from Patreon