當NPM的套件相依出問題時...

NPM

相信開發NodeJS的人
一定用過NPM這個套件管理工具
它是不錯用
但是有許多地方被人詬病
諸如:
效率問題
套件版本控制機制問題
最近剛好成為苦主
就來分享一下處理心得
(所以現在有不少人跳槽到Yarn陣營…)

這裡不談效率問題
我想NPM團隊應該會逐漸去改善
聽說5.X以上的版本有不錯的改進
至於版本控制問題
其實NPM設計出發點是沒問題的
前提是你必須遵照semver的版本號規則
若是你不依循就會造成別人編譯錯誤…
這邊簡單介紹如何避免或解決這些問題

更多...

PM2≠PM2.5

pm2

因為近年來空污問題日漸嚴重
尤其當人聽聞PM2.5這詞往往聞之色變
所以不知會不會有人看到PM2
以為是不是又有一種2微米(μm)以下之粒狀污染物出現…
在此只是為博君一笑
開一個冷冷的場子(氣溫最近屢屢創新高好像滿需要的)
言歸正傳,今天是要介紹一個守護進程的好用工具(PM2)
當初是在開發NodeJS的時候知悉
只不過因為當初想快速一點將產品上線測試
於是就先選擇非常陽春的守護進程的工具–forever
由於最近要上到生產環境
為了系統的健壯 日誌的規劃 監控 效能的提升
當然要選用PM2摟
使用過後真的建議大家快快換掉forever吧~

更多...

讓Promise許你一個未來

Promise

好久沒寫東西了,剛好最近有用Nodejs寫一個爬圖小程式,過程中有用到Promise
再加上之前用Express時把所有request都加上了Promise(感覺相當不錯)
當時用它是為了解決兩件事
1.異步調用時避免Callback Hell
2.可以try catch
但是對其原理及併發操作控制並沒有多少研究
就想說藉著這次機會 稍微再深入一點
(不知道Promise是什麼的可以參考這篇gitBook)

更多...