我应该使用哪个命令来缩小和优化 nodejs express 应用程序?

Which command should I use to minify and optimize nodejs express application?

我准备好了一个 Express-generator sccafold 网站,需要发布它。 我应该使用哪个命令来缩小文件并针对发布进行优化? 还有,我应该上传到什么目录?

express-generator是一个基于express框架的服务端渲染框架,而不是像react、vue、angular等客户端渲染,其中minify过程很常见。

这个问题:Does it make sense to minify code used in NodeJS?表明nodejs已经在对nodejs代码进行优化了。

因此,如果我们谈论的是 Express 应用程序,那么只有静态文件可以缩小以提高性能。

即时缩小

在这种情况下,您可以像客户端框架(react、angular、vue 等)那样为您的生产环境执行手动构建过程

检查这个库:express-minify 我们可以在其中缩小几种类型的文件:

app.use(minify({
  cache: false,
  uglifyJsModule: null,
  errorHandler: null,
  jsMatch: /javascript/,
  cssMatch: /css/,
  jsonMatch: /json/,
  sassMatch: /scss/,
  lessMatch: /less/,
  stylusMatch: /stylus/,
  coffeeScriptMatch: /coffeescript/,
}));

手动缩小

在这种情况下,您可以使用此库 uglify-js,但您将需要一种策略将此优化文件保存在临时文件夹中,例如 build、dist 等客户端渲染框架(react、vue 等) )

你可以这样做:

if(process.env.NODE_ENV==='PRODUCTION'){
  app.use(express.static(__dirname + '/static-optimized'));
}else{
  app.use(express.static(__dirname + '/static'));
}

最后对每个文件执行缩小过程:

uglifyjs ./static/my-code.js --output ./static-optimized/my-code.min.js

为了避免手动处理,你可以写一个例程来遍历所有的js文件,一个一个执行uglifyjs。这可能是您 package.json

中的 build 脚本

6 种加速 Express 的简单方法

发件人:https://stackabuse.com/6-easy-ways-to-speed-up-express/

  • gzip 压缩
  • 运行 生产模式快递
  • 使用 Uglify 缩小
  • 减少中间件
  • 增加最大插槽数
  • 使用缓存控制