所以我開始爲我正在做的項目使用node.js。cpu密集任務的子進程?
當客戶端發出請求時,我的node.js服務器從另一個服務器獲取一個json,然後將其重新格式化爲一個新的json,並將其提供給此客戶端。但是,節點服務器從其他服務器獲得的json可能非常大,因此對數據的「按摩」相當密集。
我一直在閱讀過去幾個小時node.js是不是偉大的CPU任務和我見過的主要反應是產卵子進程(基本上是一個.js文件運行通過不同的節點實例),它處理可能會阻塞主事件循環的任何cpu密集型任務。
假設我有20,000個併發用戶,那意味着它會產生20,000個OS級別的作業,因爲它正在運行這些子進程。
這聽起來像個好主意嗎? (一個不同的web服務器只會在同一個進程上創建20,000個線程。)
我不確定我是否應該運行子進程。但我確實需要做一個非阻塞的cpu密集型任務。我應該做什麼的想法?
segmentize一個json文件,每個服務器創建4個節點實例,2-5個服務器?現在我有一個非常可擴展且經濟高效的解決方案? gee whiz。 – foreyez
比它看起來更簡單。 2-5臺服務器的吞吐量很大。多年以來,你從哪裏來。 NodeJS的構建是爲了像系統中的節點一樣使用,它是完成任何你想做的事情所需的最低限度。這不是一種預先設定的可伸縮性解決方案,但是您可以使用它構建一個非常好的系統。 – miketheprogrammer