【发布时间】:2014-04-12 01:25:44
【问题描述】:
目前,如果一个页面有 2 个图像和 2 个 JavaScript 文件,则浏览器会进行 5 次调用。当然,你可以保持活动和流水线,但它仍然是 5 个网络调用。有没有办法发送一个 zip 文件并让浏览器解析 zip 或类似 compassed 文件中的资源?
5 次调用只是一个示例。在大型网站中,每页 30-50 次调用并不少见。此外,内联也无济于事,因为您的后续页面将引用单个 js/css/image/icon 文件。所以这些请求应该从缓存中提供。
网络呼叫很重要,特别是如果您在手机上运行混合应用程序,并且用户在东海岸,而您的数据中心在西海岸或更糟,您的用户在欧洲,而您在西海岸有数据中心等.
【问题讨论】:
-
我不知道。但实际上,5 个请求在 2014 年并不是什么大不了的事。
-
您可以使用 gzip 压缩您提供的资源,这是常见的做法,但仍然需要 5 次调用。
-
网络调用本身并不重要 AFAIK,这些调用所花费的时间取决于文件的大小,您可以将其缩小等。
-
您可以将所有 JS 放在页面上,并将图像嵌入为 Base64 或使用内联 SVG。不过,不确定您会从中获得什么。
-
@ChristopherMarshall 我讨厌这种态度。仅仅因为你可以在几秒钟内发出一百个请求,并不意味着你应该这样做。我花了好几个小时来优化我的 HTTP 流量,我的用户实际上已经注意到并感谢我,因为他们的移动设备上的速度非常快。
标签: javascript apache browser web nginx