作者:
yragggc (逼繩)
2014-04-26 20:45:42想請問Node.js在處理非同步機制的架構問題
於Node.js的APP, 可以使用
process.nextTick()
child_process.fork()
Cluster
這幾個方式來處理CPU-bound的task
但我的理解, 應該是由libuv去處理所有關於分配thread的問題
也就是抽象化後, 讓使用者只需要專注於single-thread程式的開發
而不是開發者手動去fork process?
http://ppt.cc/5I5f
圖為簡易Node.js architecture
作者: lyforever (LY) 2014-04-26 20:58:00
你是不是不了解 javascript先天的async @@?
作者:
danny8376 (釣到一隻猴子@_@)
2014-04-26 23:02:00不只js 所有async都一樣 cpu-bound本來就不適合async
作者: lyforever (LY) 2014-04-26 23:31:00
我的意思是說js的async其實不需要特地用到他講的三個方
作者:
danny8376 (釣到一隻猴子@_@)
2014-04-27 01:12:00CPU-bound <= 這狀況不fork會變災難啊
作者: lyforever (LY) 2014-04-28 16:55:00
那處理的是CPU-bound 不應該跟非同步架構混為一談吧\
作者:
danny8376 (釣到一隻猴子@_@)
2014-04-28 18:30:00原PO的問題是Nodejs裡的CPU-bound需不需要開發者自己去fork process啊
作者: lyforever (LY) 2014-04-28 19:54:00
但是原本async是要處理IO-bound而不是CPU bound不是嗎?
作者:
danny8376 (釣到一隻猴子@_@)
2014-04-28 23:00:00問題拿nodejs來寫的話就這樣啊難道js就不能寫cpu-bound嗎XD