主动缓存与Intranet站点Javascript文件的组合
我正在努力提高我公司内联网页面的页面性能。我们希望(动态地)组合我们的javascript文件,并将它们缓存30多天。每个人登录后都会启动该页面 我的一位同事问,如果我们已经将JS文件缓存了一个月,那么是否值得花时间合并这些文件。他对两者都做犹豫不决,因为组合工具是服务器端的,不在我们的桌面上运行,需要一些黑客的解决方法 我一直在做一些研究,我看到的大多数性能建议都是针对外部站点的。因为我们处于一个封闭的系统中,所以一旦每个人的缓存都已启动,我们似乎就不会从组合文件中获得太多好处。合并这些文件会给我们带来什么,而积极的缓存不会主动缓存与Intranet站点Javascript文件的组合,javascript,performance,caching,intranet,Javascript,Performance,Caching,Intranet,我正在努力提高我公司内联网页面的页面性能。我们希望(动态地)组合我们的javascript文件,并将它们缓存30多天。每个人登录后都会启动该页面 我的一位同事问,如果我们已经将JS文件缓存了一个月,那么是否值得花时间合并这些文件。他对两者都做犹豫不决,因为组合工具是服务器端的,不在我们的桌面上运行,需要一些黑客的解决方法 我一直在做一些研究,我看到的大多数性能建议都是针对外部站点的。因为我们处于一个封闭的系统中,所以一旦每个人的缓存都已启动,我们似乎就不会从组合文件中获得太多好处。合并这些文件会
如果这有什么不同的话,我们现在使用IE8。拥有多个JavaScript文件最显著的影响是渲染页面所需的时间。每个脚本标记将分别处理,并为整个渲染过程添加时间 在这里可以找到一个很好的答案@ 如果我们讨论的是大量脚本,那么您可能会看到渲染时间的改进;如果只是两个或三个文件,那么一旦文件被缓存,它可能不会带来明显的差异 我建议在这两种情况下测试页面呈现时间,看看您在您的情况下看到了多少改进,并根据这些信息做出决定 作为一个有用的例子,这里有一些来自(我不久前创建的运行时缩小工具)的统计数据;请注意从加载到准备使用组合脚本与未组合脚本之间的时间差异
这些是一些重要的建议,但要了解更多关于以下方面的最佳实践:我已经尝试实践这些建议了。我们正在使用一个运行时合并工具,该工具运行在我们的web服务器上,根据请求合并文件。在部署之前,我的团队对合并/缩小文件有很多阻碍,因为我们必须使用的工具使我们很难使用这些工具进行本地开发。我建议您的团队还应该设置“开发”环境,在这种环境中,文件不会缩小或压缩为单个文件。我想这会让你们的生活更轻松。我已经发现了所有这些,我很想简化Javascript的加载,但是页面上有几十个内联脚本标记,需要进行大量的重写。我的问题是,如果他们引用的脚本已经被缓存,那么多个脚本标记相对于一个脚本标记的影响。@Zoho-即使脚本已经被缓存,解析JS所需的时间仍然适用;如前所述,相关SO问题的链接提供了更多详细信息。因此,您的问题的答案是,使用更多脚本标记呈现页面可能需要更多的时间。我认为解析多个js文件会更慢,即使它们被缓存,我只是没有什么可引用的。谢谢