2017-08-09 128 views
2

據我所知,PM2 Cluster Mode允許我們輕鬆地跨單個機器上的CPU進行擴展。它是否創建了它正在擴展的節點應用程序的多個實例?從本質上講,它與使用Nginx這樣的反向代理在不同端口上運行多個節點應用程序是一樣的嗎?PM2羣集模式與節點羣集性能

然後,有Node Cluster其中分叉子進程。與PM2集羣模式相比,此方法效率更高,因爲它運行單個節點應用程序並使用工作線程處理傳入請求?

回答

2

他們基本上都是這樣做的,PM2將在後臺使用Node Cluster,它會讓事情變得更容易,因爲您不必在代碼中以編程方式處理分叉,只需按原樣運行。

請注意,羣集模式將不支持會話粘性,因此請確保您的應用程序是無狀態的。

+0

我可能要去測試一下,但我試圖瞭解資源使用量是否會按比例增加PM2的分支數量。例如,如果應用程序的單個實例使用4GB,則在PM2中,每個額外的實例將消耗另外4GB,而在節點羣集中則不會。 – theoutlander

+2

我剛剛發現在Node中分叉與POISIX分叉非常不同,因爲它實際上並不克隆當前進程,但它確實啓動了一個新的V8實例。資料來源:http://stackabuse.com/setting-up-a-node-js-cluster/ – theoutlander