代码之家  ›  专栏  ›  技术社区  ›  efritz

即时资产打包机

  •  2
  • efritz  · 技术社区  · 14 年前

    我正在开发一个使用 Twig reference

    我在一些网站上见过这样的打包程序(DataExplorer就是其中之一)。这是一个来自 vimeo :

    <link rel="stylesheet" type="text/css" media="all" href="/assets/css/get/38402/global,lightbox,new_phome,stats_module" />

    我在权衡利弊( 这就是你们进来的地方!

    需要考虑的几个问题:

    • 如果用户必须下载global.css的部分,因为global.css与login.css打包在一个页面上,而与另一个页面打包在一起,而没有login.css,这是否有助于提高性能?

    • 当用户点击时 (当然,还有之后的缓存),或者有没有一种方法来刮取每个页面,并将最小化的结果作为部署的一部分进行缓存,这样一个用户就不会被如此长的页面负载击中?

    离部署还有一段时间;我只是想听听你们专家的意见。

    1 回复  |  直到 14 年前
        1
  •  1
  •   Halil Özgür    14 年前

    理想情况下,您应该将文件打包成尽可能少的文件,包括库等。然后把它们压缩。

    每个文件创建另一个请求,其中:

    1. 可能会进行DNS查询,
    2. 发送的Cookies(如果没有使用静态子域),
    3. .htaccess , php.ini 检查etc

    还有很多其他的。这样做的开销通常比打包并在单个压缩文件中发送它们的开销要大很多。使用压缩,文件大小和缓存就不会有问题。

    您可以找到许多关于这一点的好建议,以及任何web应用程序的其他可能的速度改进 Google Speed (特别是物品)和 Yahoo Performance .