improve-gzip引入后node_modules中.cache compression-webpack-plugin占用内存过多

这篇具有很好参考价值的文章主要介绍了improve-gzip引入后node_modules中.cache compression-webpack-plugin占用内存过多。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.Gzip

Gzip(GNU zip)是一种常见的文件压缩格式和压缩算法,通常用于在 Web 服务器上对静态资源文件进行压缩,以减小文件大小并加快文件传输速度。在前端开发中,经常会使用 Gzip 压缩来优化网站的性能。

Gzip 压缩通过移除文件中的重复数据和不必要的信息来减小文件大小,从而减少网络传输时间。当浏览器请求支持 Gzip 压缩的资源时,服务器会将这些资源进行压缩,并在响应中添加相应的头部信息表明该资源已经被压缩。浏览器在接收到响应后会解压缩这些资源,并正常加载页面。

在前端开发中,常见的静态资源如 JavaScript、CSS 和字体文件都可以通过 Gzip 压缩来减小文件大小。大多数现代的 Web 服务器都支持 Gzip 压缩,并提供了相应的配置选项来启用该功能。

如果你想在自己的项目中使用 Gzip 压缩,你需要确保你的 Web 服务器已经配置了 Gzip 压缩,并且你的静态资源文件类型被包括在了压缩范围内。一般来说,在使用类似于 Nginx 或 Apache 的 Web 服务器时,你可以通过配置文件来启用 Gzip 压缩。

总之,Gzip 压缩是一种常见且有效的前端性能优化手段,可以显著减小静态资源文件的大小,提高网页加载速度。

2.compression-webpack-plugin

用于在构建过程中对静态资源文件进行压缩的 Webpack 插件。它可以帮助你在构建过程中生成经过压缩的静态资源文件,比如 JavaScript 和 CSS 文件,以减小文件大小并提高加载速度。

该插件基于 Node.js 中的 zlib 模块,可以使用多种压缩算法(如 Gzip、Brotli 等)对文件进行压缩。通过使用 compression-webpack-plugin,你可以轻松地在 Webpack 构建过程中自动地对输出的静态资源文件进行压缩处理。

const CompressionPlugin = require('compression-webpack-plugin');

module.exports = {
  // ...其他配置
  plugins: [
    new CompressionPlugin({
      algorithm: 'gzip',
      test: /\.(js|css)$/,
      threshold: 10240,
      minRatio: 0.8
    })
  ]
};

引入了 compression-webpack-plugin,并将其作为一个插件添加到了 Webpack 的配置中。在插件的参数中,我们指定了要使用的压缩算法为 Gzip(也可以是其他算法),并且指定了要压缩的文件类型、阈值等参数。

并且此插件默认开启cache缓存。每一次running的时候cache缓存会对应增加,一个月差不多100g

, node_modules/.cache/compression-webpack-plugin,improve,webpack,前端,node.js

3.问题解决

 3.1暂时解决

        ·直接删除对应的缓存

, node_modules/.cache/compression-webpack-plugin,improve,webpack,前端,node.js

3.2vue.config中设置 

插件默认开启cache缓存,设置.cache:false

vueConfig.configureWebpack.plugins.push(
    new CompressionWebpackPlugin({
    // 开发模式的时候不开启,生产模式的时候开启。此插件默认开启cache缓存
      cache: false,
      filename: '[path].gz[query]',
      algorithm: 'gzip',
      test: new RegExp(
      '\\.(' + productionGzipExtensions.join('|') + ')$'
    ),
    threshold: 10240, // 只有大小大于该值的资源会被处理 10240
    minRatio: 0.8, // 只有压缩率小于这个值的资源才会被处理
    deleteOriginalAssets: false // 删除原文件
  }))

module.exports = vueConfig

根据需要进行.cache的配置,可以将其配置成环境变量,不同环境下进行判断是否缓存。文章来源地址https://www.toymoban.com/news/detail-828507.html

到了这里,关于improve-gzip引入后node_modules中.cache compression-webpack-plugin占用内存过多的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 引入wangeditor 报错 error in ./node_modules/@wangeditor/editor/dist/index.esm.js

     解决办法 找到自己项目中的webpack.base.conf.js文件  找到下图中的代码下方,插入一块代码就解决了    最后完整代码,改完记得重启

    2024年02月11日
    浏览(28)
  • 快速删除 node_modules

    node_modules 文件夹中包含了大量 node 需要的依赖包,如果直接删除的话,非常耗时。 我们可以通过以下方式快速删除node_modules: 安装 rimraf rimraf包的作用:以包的形式包装rm -rf命令,用来删除文件和文件夹的,不管文件夹是否为空,都可以删除。 执行 命令来全局安装 rimraf 进入

    2024年02月13日
    浏览(45)
  • 快速删除node_modules

    要快速删除 node_modules 目录,你可以使用以下方法: 使用命令行(Windows): 打开命令提示符 (Command Prompt) 或者 PowerShell。 进入你的项目目录,确保当前目录下包含 node_modules 目录。 运行以下命令来删除 node_modules 目录及其所有内容: bash rmdir /s node_modules 使用命令行(Mac/Lin

    2024年04月13日
    浏览(38)
  • 关于删除node_modules

     一、彻底清除node_modules目录 1. npm cache clean --force    // 清除npm缓存 2. rm -rf node_modules /或者手动删除node_modules目录     // 删除node_modules文件目录 3. 删除package-lock.json或者yarn.lock 4. npm install/yarn install 5. npm run start 二、执行rm-rf node_modules,报错:“rm不是内部命令”... 解决方

    2024年02月05日
    浏览(47)
  • vscode设置 git提交代码忽略node_modules,dist,vscode如何设置不提交node_modules,dist

    vscode git提交时会自动把node_modules和 dist文件夹内文件上传至git中 如有其他需要忽略的目录,直接换行添加即可 在vscode命令行输入 生成gitignore文件

    2024年04月10日
    浏览(44)
  • 深入浅出Node.js中的node_modules

    在Node.js中, node_modules 是一个特殊的目录,通常用来存放项目所依赖的 npm 包及其相关依赖,以供应用程序在运行时动态加载所需的模块和库文件。 当使用 npm 或者 yarn 等包管理工具安装npm包时,会将相关依赖包下载并保存在项目的 node_modules 目录下,以便于在应用程序中引用

    2024年02月06日
    浏览(35)
  • IDEA设置忽略node_modules

    项目中有node_modules,在idea打开时,idea也会扫描该目录并索引,有时会导致卡死。 可以在 文件 ---- 设置 ---- 编辑器 ---- 文件类型,将node_modules设置为忽略文件。 修改 项目.iml 文件,在content节点增加 excludeFolder url=\\\"file://$MODULE_DIR$/node_modules\\\" /

    2024年02月08日
    浏览(37)
  • 删除&重装node_modules的方法

    先安装删除工具 删除命令 先进入子项目 装node_modules

    2024年02月06日
    浏览(49)
  • 修改node_modules里的源码

    最近在工作中使用到一款生成二维码的依赖(以vue项目为例讲解):vue-qr,安装的4.0.9版本的,在启动工程的时候报错: 后我查阅各种资料发现 1,找到node-modules下面的vue-qr文件夹 2,打开vue-qr文件夹下面的dist下面的 vue-qr.js 3,搜索 ‘…’ 字段 4, 删除 e 前面的 三个点,然后

    2024年02月14日
    浏览(55)
  • git取消提交node_modules

    1、创建.gitignore文件:在项目的根目录中创建一个名为\\\".gitignore\\\"的文件(如果尚不存在)。 2、编辑.gitignore文件:使用文本编辑器打开.gitignore文件,并在文件中添加一行指定要忽略的文件或目录。在这种情况下,您可以添加以下行以排除node_modules文件夹: 3、保存并提交.git

    2024年02月15日
    浏览(44)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包