如何最好地预安装OR预加载或缓存JavaScript库以优化性能?

时间:2010-03-15 07:08:29

标签: javascript performance caching preload

我正在为Intranet应用程序工作。因此,我对客户端计算机有一些控制权。我使用的JavaScript库有点大。我想在每台机器(每个浏览器)上预安装OR预加载或缓存JavaScript库,这样它就不会为每个请求传输。我知道浏览器会为后续请求缓存JavaScript库,但我希望为所有后续请求,会话和用户缓存一次库。

实现这一目标的最佳机制是什么?

2 个答案:

答案 0 :(得分:4)

您不需要访问客户端计算机。最佳实践都是服务器端:

  • GZip everything;
  • 缩小所有Javascript和CSS;
  • 最大限度地减少外部HTTP请求的数量。尝试将这些文件保存到1-5个JS文件,1-5个CSS文件和一些图像。如果您有大量图片,可以使用CSS spriting;
  • 版本你的图像,CSS和Javascript;和
  • 为所有图片,CSS和Javascript使用远期期货Expires标头。

最后两点意味着内容会被缓存,直到更改为止。您可以使用正式版本的实际版本号(例如jquery-1.4.2.min.js,1.4.2是版本号)。对于您自己的应用程序的代码,通常您将使用类似文件的mtime(上次修改时间)作为查询字符串。例如:

<script type="text/javascript" src="/js/code.js?1233454356"></script>

从文件的修改时间生成?之后。客户端下载一次,由于远期未来Expires标题,在版本号更改之前不会再次下载,直到文件更改才会再次下载。

答案 1 :(得分:0)

将逻辑与JS上的执行分开,然后您可以在第一次用户访问时加载脚本(逻辑),然后使用会话/ cookie,您不再加载这些文件,但是它们将在缓存上,然后,当你需要脚本只包含它们,它们将从缓存中进行编码。

相关问题