nodejs 代替python_Python/NodeJS坑记
Python/NodeJS坑記
自從學了Python和NodeJS,每每在寫新的程序之前我就會問自己:到底用Python好,還是用NodeJS好?兩者都能進行快速開發,并且各有千秋。
現在就記錄一下Python和NodeJS開發程序時的各種坑,方便以后糾結的時候查詢。
因為增加輔助代碼會增加工作量,所以以下情況都是在不考慮其他輔助代碼,例如線程池,任務管理,的情 況下的考慮。
坑1:Python對高并發的支持
Python對付并發的手斷一般是多線程。多線程用來對付耗時較長的的并發任務是比較有效的。只需要寫下平常的同步代碼然后創建線程去運行就好了。
但是多線程處理有非常嚴重的問題,那就是對細粒度的并發任務不友好。雖然有其他辦法可以解決效率問題,但是會增加代碼量,降低易讀性和可維護性。
坑2:NodeJS對內存的管理既然Python對高并發支持不好,那么遇到高并發的程序,我們就用NodeJS吧。
想想是美好的,顯示是殘酷的。NodeJS處理高并發并沒有想像中的那么好。
NodeJS有極速V8引擎,對異步調用相性超高,乍一看是非常好的處理高并發的語言。
但是NodeJS有內存限制!它沒法使用超過2G的內存,這是由V8引擎內部決定的,暫時沒法解決這個問題。
要就保證處理量不超過2G,要不就使用其他辦法(目前想到Cluster似乎可以解決,但是尚未嘗試過)
坑3:TypeScript for NodeJS
本來NodeJS是可以進行快速開發小型程序的。但是TypeScript出現了,這個東西令我非常喜愛,可創建它的項目非常麻煩,需要一大堆依賴項,一大堆命令。
最近發現了MSYS2,可以考慮寫一個bash腳本簡化創建項目的工作。
坑4:NodeJS第三方庫太少
NodeJS雖然有npm,但是作為一款本地語言,本地操作的庫還是太少了,很多常用操作都不支持,例如python對smb協議的支持就很好,而node就差多了。
總結
以上是生活随笔為你收集整理的nodejs 代替python_Python/NodeJS坑记的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 程序猿要什么爱情,陪你未来的是键盘和代码
- 下一篇: c++怎么保留小数位数