5

当您向页面提供 JavaScript 时,最好提供一个打包、缩小和 gzip 压缩的文件,以减少延迟和请求时间。

但是发送更好吗

  1. 为您的整个网站提供一个大包
  2. 您网站中的每个页面都有一个大包。
  3. CDN我不想从 CDN 加载

使用 1. 您在初始加载时会获得更多负载,但随后您的所有 javascript 都会在整个访问您的网站时被缓存。

使用 2. 您只加载页面所需的量,因此减少了初始加载时间,但您网站的每个页面上都没有缓存相同的文件。

首选哪种方法?

node.js用来提供我的 JavaScript,我ender用来打包我的 JavaScript。

编辑

换个说法,我正在考虑在我的包装上实现自动化。这种自动化会将所有内容打包到我整个网站的一个文件中,或者将页面特定的文件列表打包到每个页面的一个文件中。

我还没有关于我的 JavaScript 文件的任何统计信息,但我很好奇我应该实现这两种自动化中的哪一种。

4

1 回答 1

3

选项 1 是站得住脚的。

选项 2 是个坏主意(出于您指定的原因)。

您缺少选项 4,即拥有一个大型核心包,并根据需要进行实例更新(包括辅助 javascript)......没有理由在每个页面上加载您的谷歌地图代码,当您只需要在这里和那里时, 例如。但是也没有理由重新提供您的“核心”套餐。

这通常是我使用的选项。当速度非常重要时,我使用一个子域,它几乎从 apache 中剥离了所有内容(没有会话或 cookie、php 等)。我实际上有一台服务器,它充当我所有客户端的中央静态存储库,并在 DNS 中使用虚拟域为“静态”提供了一个额外的 A 名称记录。


补充:作为对您的编辑的回应,我认为最合适的做法是列出需要在自动化中组合在一起的文件。无需获取“所有内容”,而是获取“to_pacakge”数组中的所有项目。

于 2011-05-21T23:09:57.540 回答