当前位置: 首页 > 网络应用技术

WebPack性能优化 - 建筑速度

时间:2023-03-07 00:10:20 网络应用技术

  随着项目变得越来越复杂,您可能会有相同的感觉。当您回到厕所时,尚未建立该项目。但是,测试一直在敦促。也许您应该考虑如何优化我们的施工速度。

  1.优化Babel-Loader

  当执行Babel-Loader时,它可能会在操作过程中产生一些重复的公共文件,从而产生较大的冗余代码量,并减慢汇编效率。因此,我们可以通过添加打开Babel缓存。

  2. noparse

  此配置项目允许部分不使用模块化文件进行递归解析和处理。应该忽略的文件不能包括模块化句子。

  3. HappyPack(多进程包装)

  由于JavaScript是一个单个线程模型,因此,如果您想扮演多核CPU的能力,则只能通过多过程实现它,并且不能通过多线程实现。分析和编译JS,CSS等,以便可以并行处理多个子任务。完成多个子任务后,将结果发送到主进程。

  1.更换常用的

  2.创建HappyPack插头-in

  这样,配置了HappyPack的使用。如果运行该项目,则可以看到控制台打印以下提示:

  说明配置是有效的。对多进程进行重新检查,请注意:

  4. ParoulleGlifyPlugin(多进程压缩JS)

  默认值是为压缩代码的插头-in提供的,但它使用单个线程压缩代码,这意味着需要压缩多个文件,并且需要每个文件才能压缩。正式环境非常慢(因为压缩代码需要首先分析代码为摘要指示的语法,然后应用各种规则来分析和处理它,这导致此过程需要很多)。将压缩代码作为以下内容:

  插件-IN将打开多个子过程并完成多个子过程以压缩多个文件,但是每个子过程仍然通过uglifyjs.s.s.s.s.s.s.s.s.s.s.s.s.s.s.s.s.s.s.s.s.s.s.s.s''和Parallel Processing进行了压缩。多个儿童的任务将提高效率。

  在这里,我推荐一篇文章来传输门

  5.忽略倍lugin

  忽略Plugin插件的主要角色是,它可以在包装和减少包装量时忽略无用的内容。对于特定用途,请参阅官方网站的官方网站

  6. dllplugin

  在动态链接库中打包带有更高重复使用的第三方模块。如果不升级这些库,则无需重新包装动态库。

  在这里,您可以参考传送门的文件。这个老大哥更详细,我不会在这里详细介绍。

  除了在包装方面进行优化外,我们还应该注意通常的写作代码,考虑性能问题并考虑包装的数量。需求介绍,懒负荷等。