假设我有一个页面有几个子页面不共享相同的脚本,关于服务器负载和性能的最佳策略是什么?
现在我已经在所有页面中包含了所有 javascript 文件/插件。但例如,subpage1 是唯一使用 GoogleMaps API 的,subpage2 是唯一使用灯箱插件的,等等。
我的页面有时会很拥挤,所以我想尽可能减少服务器负载。那么,什么是最好的?这还重要吗?
假设我有一个页面有几个子页面不共享相同的脚本,关于服务器负载和性能的最佳策略是什么?
现在我已经在所有页面中包含了所有 javascript 文件/插件。但例如,subpage1 是唯一使用 GoogleMaps API 的,subpage2 是唯一使用灯箱插件的,等等。
我的页面有时会很拥挤,所以我想尽可能减少服务器负载。那么,什么是最好的?这还重要吗?
考虑将静态内容移出您的服务器。
对于像 jquery 这样的公共 JS 文件,我会简单地链接到公共站点,以便 Google 或任何为它们提供服务的人。这样可以减轻服务器的负载,而且他们的 CDN 有机会从靠近客户端的站点提供文件,从而加快加载速度。
另一种选择是在 AWS S3 中托管您的静态内容,例如 JS/CSS/PNG。
你index.html
应该看起来像这样:
<!--#include virtual="header.html" -->
<!--#include virtual="main.html" -->
<!--#include virtual="footer.html" -->
您所有必要的资产都在header.html
文件中,所需的资产在main.html
文件中。
(当然,您也可以轻松地使用 PHP 或 Javascript / jQuery 版本。)
实际上,这取决于您的服务器配置。
如果它允许将状态 304 作为响应,那不会太麻烦,因为不会发回内容。
如果服务器甚至不发送某些标头,例如Cache-Control: must-revalidate
,某些浏览器甚至可以完全避免该请求。