角度2中的bundle.js.gz文件是什么?

时间:2016-10-01 05:50:55

标签: javascript angularjs angular typescript webpack

我在申请时使用ng-cli。当我运行build build --prod时,我有两个文件main.budle.js& main.bundle.js.gz。什么是第二个&它有什么好处?

2 个答案:

答案 0 :(得分:7)

服务器和客户端之间的HTTP传输几乎总是使用压缩。在大多数情况下,这是gzip。

因此,对于传输时间而言,重要的不是bundle.js的大小,而是bundle.js.gz的大小,因为内容实际上始终以gzip压缩格式发送。

当请求bundle.js时,服务器会动态地对其进行gzips并将其置于线路上。因此gzip会在每个请求上运行,这对静态内容来说效率很低。

gzip的性能随着压缩程度(check out this article)而显着下降。如果可能的话,使用尽可能高的压缩级别是无效的。 正确配置的网络服务器会在请求gzip版本的bundle.js.gz时发送bundle.js,因此您可以使用gzip提供的最高压缩级别。

在我看来,除非你的服务器主要提供可以提前压缩的静态内容,否则这个性能奖励可以忽略不计。对于小型应用程序,静态内容和API由同一台机器提供服务,实际上应该没有任何影响。

答案 1 :(得分:1)

Gzipped文件夹适用于服务器。您的服务器必须具有此类配置。将其写入您的服务器配置文件,以便他们可以发送gzipped文件夹。

enter image description here enter image description here