[译]关于NODE_ENV,哪些你应该了解
原文
Node.js開發(fā)者經(jīng)常檢測環(huán)境變量NODE_ENV,但你是否知道設(shè)置這個值同時也具有著某些別的意義?閱讀本文你將發(fā)現(xiàn)這些。
NODE_ENV是一個在Express框架中極其常用的環(huán)境變量。用其確定應(yīng)用的運(yùn)行環(huán)境(諸如開發(fā),staging,生產(chǎn),測試...)。
通常,應(yīng)用將會運(yùn)行在開發(fā)環(huán)境。我們可以通過改變process.env.NODE_ENV來改變環(huán)境。讓我們來看看框架/庫在不同環(huán)境下的表現(xiàn)。
開發(fā)環(huán)境
顯示更多日志
不緩存視圖
生成較冗余的錯誤信息
js,css這類前端資源,不壓縮不緩存
生產(chǎn)環(huán)境
以下是與框架無關(guān)的一些特點(diǎn):
中間件及其他依賴會被切換到更高效的代碼路徑
只安裝dependencies中的包,dependencies與peerDependencies的中包會被忽略
express.js
緩存視圖框架
生成更簡短的錯誤信息
緩存資源文件
sailsjs
可以使用CSRF
壓縮服務(wù)端響應(yīng)(詳見https://www.npmjs.com/package...)
模塊遷移的設(shè)置被強(qiáng)制定位'safe'。這可以保證在部署時不會破壞生產(chǎn)數(shù)據(jù)。
從res.serverError()追蹤錯誤信息與錯誤棧會被存在日志中而不是通過服務(wù)端響應(yīng)返回。
mongoose
全局禁用autoIndex。這能顯著提高性能(詳見http://docs.mongodb.org/manua...)。
還有許多這里就不一一列出。如你所見,將NODE_ENV設(shè)為production能達(dá)到更好的性能。所以這個變量在全球Node開發(fā)者心中有如此重要的地位。你應(yīng)該牢記“總是將NODE_ENV設(shè)為production”。
總結(jié)
以上是生活随笔為你收集整理的[译]关于NODE_ENV,哪些你应该了解的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: MFC界面库BCGControlBar
- 下一篇: 华为交换机如何导出配置信息_华为交换机配