• webpack做HTTP压缩


    什么是HTTP压缩?

    1. HTTP压缩是一种内置在 服务器 和 客户端 之间的,以改进传输速度和带宽利用率的方式;
    2. HTTP压缩的流程什么呢?
      1. 第一步:HTTP数据在服务器发送前就已经被压缩了;(可以在webpack中完成)
      2. 第二步:兼容的浏览器在向服务器发送请求时,会告知服务器自己支持哪些压缩格式;在这里插入图片描述
      3. 第三步:服务器在浏览器支持的压缩格式下,直接返回对应的压缩后的文件,并且在响应头中告知浏览器;在这里插入图片描述
      4. 目前的压缩格式非常的多:
      5. compress – UNIX的“compress”程序的方法(历史性原因,不推荐大多数应用使用,应该使用gzip或deflate);
      6. deflate – 基于deflate算法(定义于RFC 1951)的压缩,使用zlib数据格式封装;
      7. gzip – GNU zip格式(定义于RFC 1952),是目前使用比较广泛的压缩算法;
      8. br – 一种新的开源压缩算法,专为HTTP内容的编码而设计;

    什么是bundle,什么是chunk,什么是module

    bundle:是由webpack打包出来的文件
    chunk:是指webpack在进行模块依赖分析的时候,代码分割出来的代码块
    module:是开发中的单个模块
    在这里插入图片描述

    什么是长缓存?在webpack中如何做到长缓存优化

    浏览器在用户访问页面的时候,为了加快加载速度,会对用户访问的静态资源进行存储,但是每一次代码升级或者更新,都需要浏览器去下载新的代码,最方便和最简单的更新方式就是引入新的文件名称。

    在webpack中,可以在output给出输出的文件制定chunkhash,并且分离经常更新的代码和框架代码,通过NameModulesPlugin或者HashedModulesPlugin使再次打包文件名不变。

    webpack-dev-server 和 http服务器的区别

    webpack-dev-server使用内存来存储webpack开发环境下的打包文件,并且可以使用模块热更新,比传统的http服务对开发更加有效。

    webpack3和webpack4的区别

    mode/–mode参数,新增了mode/–mode参数来表示是开发还是生产(development/production)production 侧重于打包后的文件大小,development侧重于goujiansud移除loaders,必须使用rules(在3版本的时候loaders和rules 是共存的但是到4的时候只允许使用rules)移除了CommonsChunkPlugin (提取公共代码),用optimization.splitChunks和optimization.runtimeChunk来代替支持es6的方式导入JSON文件,并且可以过滤无用的代码

  • 相关阅读:
    JavaScript系列从入门到精通系列第十八篇:JavaScript中的函数作用域
    单片机原理期末复习笔记
    代码随想录算法训练营第53天|1143. 最长公共子序列,1035. 不相交的线,53. 最大子数组和
    Clickhouse 的无 root 部署方案浅探
    OpenCV-Python学习(12)—— OpenCV 向图像添加文本(cv.putText、cv.getTextSize)
    企业级监控方案——zabbix!(上)
    VUE3照本宣科——eslint与prettier
    【PAT甲级】1110 Complete Binary Tree
    【机器学习8】采样
    Cadence OrCAD Capture管脚Passive和Power属性功能详细介绍图文教程
  • 原文地址:https://blog.csdn.net/formylovetm/article/details/126114311