Node.js 中开发和生产的区别
了解如何为生产和开发环境设置不同的配置。
生产环境和开发环境可以有不同的配置。
Node.js 假定它始终在开发环境中运行。
你可以通过设置 NODE_ENV=production
环境变量向 Node.js 发送你正在生产环境中运行的信号。
这通常通过执行命令来完成,在 shell 中
但最好将它放在你的 shell 配置文件中(例如 Bash shell 的 .bash_profile
),否则设置在系统重启时不会保留。
你还可以通过将环境变量添加到应用初始化命令中来应用环境变量:
此环境变量是一种在外部库中也广泛使用的约定。
将环境设置为 production
通常可以确保
- 日志记录保持在最低限度,基本水平
- 更多缓存级别发生以优化性能
例如,如果 NODE_ENV
未设置为 production
,则 Express 使用的模板库 Pug 将在调试模式下编译。 Express 视图在开发模式下的每个请求中编译,而在生产中它们被缓存。 还有更多的例子。
你可以使用条件语句在不同环境中执行代码:
例如,在 Express 应用中,你可以使用它为每个环境设置不同的错误处理程序: