[譯]關于NODE_ENV,哪些你應該了解

原文

Node.js開發者經常檢測環境變量NODE_ENV,但你是否知道設置這個值同時也具有著某些別的意義?閱讀本文你將發現這些。

NODE_ENV是一個在Express框架中極其常用的環境變量。用其確定應用的運行環境(諸如開發,staging,生產,測試...)。

通常,應用將會運行在開發環境。我們可以通過改變process.env.NODE_ENV來改變環境。讓我們來看看框架/庫在不同環境下的表現。

開發環境

  • 顯示更多日志

  • 不緩存視圖

  • 生成較冗余的錯誤信息

  • js,css這類前端資源,不壓縮不緩存

生產環境

以下是與框架無關的一些特點:

  • 中間件及其他依賴會被切換到更高效的代碼路徑

  • 只安裝dependencies中的包,dependenciespeerDependencies的中包會被忽略

express.js

  • 緩存視圖框架

  • 生成更簡短的錯誤信息

  • 緩存資源文件

sailsjs

  • 可以使用CSRF

  • 壓縮服務端響應(詳見https://www.npmjs.com/package...)

  • 模塊遷移的設置被強制定位'safe'。這可以保證在部署時不會破壞生產數據。

  • res.serverError()追蹤錯誤信息與錯誤棧會被存在日志中而不是通過服務端響應返回。

mongoose

全局禁用autoIndex。這能顯著提高性能(詳見http://docs.mongodb.org/manua...)。

還有許多這里就不一一列出。如你所見,將NODE_ENV設為production能達到更好的性能。所以這個變量在全球Node開發者心中有如此重要的地位。你應該牢記“總是將NODE_ENV設為production”。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/281267.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/281267.shtml
英文地址,請注明出處:http://en.pswp.cn/news/281267.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

GatewayWorker Not Support On Windows.

thinkphp版本:5.1 tp5.1運行命令行php think worker:gateway出現GatewayWorker Not Support On Windows.是因為在tp5.1的命令行中做了判定,不支持windows環境下運行。 這里不支持windows環境并不是說gateway worker不支持windows,而是tp5.1的…

8支團隊正在努力構建下一代Ethereum

“我們不想在構建 Ethereum 2.0時重新造輪子。” 談到開發人員為 Ethereum 區塊鏈進行兩個獨立的升級(一個稱為 Ethereum 2.0,另一個稱為 Ethereum 1x)所作出的補充努力,勞爾喬丹堅持認為,在較短的時間內將升級包括在 …

fastjson SerializerFeature詳解

名稱含義備注QuoteFieldNames輸出key時是否使用雙引號,默認為true UseSingleQuotes使用單引號而不是雙引號,默認為false WriteMapNullValue是否輸出值為null的字段,默認為false WriteEnumUsingToStringEnum輸出name()或者original,默認為false UseISO8601DateFormatDate使用ISO…

費曼學習法中問題的提出與反問,擴展與主動查詢的學習習慣訓練過程

在2022年11月05日的對話中,九遷先講了女媧補天和女媧造人的故事,女媧造人的故事還講了兩個版本的,隨后提到了一個事情,那就是,如果你要找一個神仙一起度過一天,你想找誰,想做些什么?…

Fiddle:使用斷點:bpu,bpafter

http://www.cnblogs.com/yoyoketang/p/6778006.html轉載于:https://www.cnblogs.com/peixianping/p/7230021.html

windows環境下TP5.1使用think-worker(Workerman/GatewayWorker)

文章目錄首先是解決如何運行gatewayworker調試gatewayworker程序向指定客戶端發送消息在TP框架中調用Gateway的API總結說明測試環境 windows10;PHP7.2;TP5.1; 這里只介紹如何使用TP集成的workerman擴展庫think-worker,原生workerm…

webpack之DefinePlugin使用

DefinePlugin是webpack注入全局變量的插件,通常使用該插件來判別代碼運行的環境變量。在使用該插件需要注意的是,如果在該插件配置了相關的參數,必須要源碼中使用,webpack才會注入。例如: new webpack.DefinePlugin({p…

Magicodes.IE 2.7.0發布

2.7.02022.11.07使用SkiaSharp替代SixLabors.ImageSharp移除SixLabors.Fonts感謝linch90的大力支持(具體見pr#462)部分方法改為虛方法2.7.0-beta2022.10.27使用SixLabors.ImageSharp替代System.Drawing,感謝linch90 (見pr#454&…

Mobx 與 Redux 的性能對比

在本文中你將看到我最終得出的結論是 Mobx 的性能優于 Redux。但很明顯這樣的結論是片面的,甚至是有失偏頗的,因為我只選取了一個的場景對兩者進行測試。可能真實的情況恰恰相反,Mobx 僅僅在我測試的這個場景中優于 Redux,但是在我…

linux lsof/netstat查看進程和端口號相關命令:

本文為博主原創,未經允許不得轉載: 在linux操作時,經常要查看運行的項目的進程和端口號,在這里總結了以下常用到的相關命令: 1.查看系統運行的java項目,并查看進程號 這個用到的命令為: ps -ef|…

C#高級編程9 第17章 使用VS2013-C#特性

C#高級編程9 第17章 使用VS2013 編輯定位到 如果默認勾選了這項,請去掉勾選,因為勾選之后解決方案的目錄會根據當前文件選中。 可以設置項目并行生成數 版本控制軟件設置 所有文本編輯器行號顯示 啟用編輯繼續 收集調試信息,將影響性能 Code …

還在手畫C#依賴關系圖嗎?快來試試這個工具吧!

還在手畫C#依賴關系圖嗎?快來試試這個工具吧!筆者最近見到了一個不錯的工具,可以讓大家在看代碼的時候一鍵生成C#依賴的類圖。非常適合編寫文檔、查看和學習開源項目設計時使用,比如下方就是筆者通過這個工具生成的Microsoft.Exte…

Web服務器 - Apache配置介紹

基本語法 常量的定義與使用,使用關鍵詞 Define 可以定義常量,使用 ${} 插入常量,如下 語法規則說明示列Define定義常量Define SRVROOT “D:/srv/Apache24”${}使用常量ServerRoot “${SRVROOT}”/表示路徑時使用 / 而不使用 \D:/srv/Apache…

點火開關分為4個檔位,分別是off,acc,IG-on,和ST

off全車除了常火(如應急燈,時鐘等的記憶功能)外,均不供電。acc 是附件檔,部分車載附屬設備供電,如視聽系統,儀表燈,燈光等。也就是說,車停在哪里,發動機不轉&…

h5的formData 上傳文件及.net后臺

先來前端的代碼&#xff1a; html 代碼&#xff1a; <input type"file" id"files" value"" multiple/> js代碼&#xff1a; function init() {var ele_files document.querySelector("#files");ele_files.addEventListener(&qu…

51 Nod 1027 大數乘法【Java大數亂搞】

1027 大數乘法 基準時間限制&#xff1a;1 秒 空間限制&#xff1a;131072 KB 分值: 0 難度&#xff1a;基礎題 給出2個大整數A,B&#xff0c;計算A*B的結果。Input第1行&#xff1a;大數A 第2行&#xff1a;大數B (A,B的長度 < 1000&#xff0c;A,B > 0&#xff09; Out…

關于ASP.NET Core WebSocket實現集群的思考

前言提到WebSocket相信大家都聽說過&#xff0c;它的初衷是為了解決客戶端瀏覽器與服務端進行雙向通信&#xff0c;是在單個TCP連接上進行全雙工通訊的協議。在沒有WebSocket之前只能通過瀏覽器到服務端的請求應答模式比如輪詢&#xff0c;來實現服務端的變更響應到客戶端&…

windows環境下Apache+PHP+MySQL搭建服務器

相關文件下載 下載地址Apachehttps://www.apachehaus.com/cgi-bin/download.plxPHPhttps://windows.php.net/downloadMySQLhttps://dev.mysql.com/downloads/mysql/MySQL MySQL配置 當前使用的MySQL版本是8.0.18&#xff0c;在MySQL根目錄下新建my.ini文件&#xff0c;下面是…

angular.js國際化模塊

最近需要將一個項目轉化成英文的&#xff0c; 于是發現一個angular模塊angular-translate&#xff0c;實現如下&#xff1a; 1.安裝包 bower install angular-translate bower install angular-translate-loader-static-files //然后在頁面引用進去 <script src"/angul…

觸屏網站如何實現返回并刷新

目的 在會員中心等頁面常常會遇到進入內頁修改信息&#xff0c;返回前一個頁面需要更新信息的場景。 思路 用COOKIE記錄當前頁面是否需要刷新&#xff0c;返回之后再刷新一次頁面。 方案 下載js.cookie.js然后引入到項目中 https://github.com/js-cookie/js-cookie 先來一個最簡…