Bluemix上的Node.js應用程序是否會自動縮放以在多個處理器上運行,還是我需要使用Node的集羣API自己實現?如果我使用集羣,是否會有多個CPU可用?在Bluemix上對Node.js進行集羣
3
A
回答
8
簡答:您需要使用節點集羣模塊充分利用每個實例中的所有核心。或者,您也可以增加實例的數量。
長答案:您推送到bluemix的應用程序的每個實例都在監督容器中運行。資源控制由linux cgroups管理。每個實例的核心數量不是您可以控制的。在Bluemix上運行一個快速測試,os.cpus()顯示了4個內核。如果您想要利用所有4個內核,則可以在node.js應用程序的一個Bluemix實例(warden容器)中使用節點集羣模塊。
請記住,您還可以增加實例的數量(水平縮放),這可以實現接近線性的結果,具體取決於您使用外部服務的瓶頸。因此,如果您有3個實例,那麼每個實例都有4個內核,並且內置負載平衡器會在3個實例之間分配流量。
6
Ram提出的混合模型很有意義。您可能需要執行一些基準測試,以確定您希望在一個應用程序容器中運行多少個進程。您可以使用「cf app」監視負載下每個應用程序實例的CPU利用率,如果它沒有完全消耗CPU,那麼產生更多進程可能是有意義的。
但是,請注意 - * CPU可能不是瓶頸,在這種情況下,在應用容器中產生更多進程或縮放更多應用容器實例將無濟於事; *您在一個容器中產生的進程越多,它消耗的內存就越多,因此請確保您不會產生太多並超過分配的內存數量(否則應用程序容器將被終止)。
相關問題
- 1. Node.js集羣上的SocketIO
- 2. 在tomcat上用彈簧進行集羣
- 3. Node.js的集羣子進程路徑
- 4. 針對SQL Server集羣進行開發
- 5. Node.js集羣不在監聽
- 6. 部署parse-on-bluemix node.js應用程序以進行bluemix失敗
- 7. Node.js,express和集羣
- 8. Node.js集羣模塊
- 9. Node.js集羣錯誤
- 10. Node.js羣集示例
- 11. 在羣集上運行openmp
- 12. Openshift上使用Node.js羣集模塊
- 13. node.js上的npm集羣錯誤0.6.5
- 14. 如何使用ASP.Net對上傳文件夾進行羣集?
- 15. 強制刪除IBM Bluemix Kubernetes羣集
- 16. Node.js everyauth集羣錯誤
- 17. Node.js - 核心羣集模塊
- 18. Node.js事件和集羣
- 19. Node.js多服務器集羣
- 20. 用node.js調用羣集?
- 21. 使用羣集node.js rest api
- 22. 在hadoop集羣上安裝spark集羣
- 23. Mongrel羣集在Windows上並行運行
- 24. java.lang.NoClassDefFoundError:上運行Hadoop集羣
- 25. 如何在集羣中對不同的緩存進行分組
- 26. 如何在igraph社區集羣中對邊緣進行着色
- 27. Python -Selenium - Bluemix - 在Bluemix上運行硒
- 28. Bluemix對話,推進對話
- 29. 如何在Bluemix上的Kubernetes羣集上檢索Hyperledger的服務憑證
- 30. 在集羣上使用R進行內存虛擬化