假設我有一臺16核心的機器,並且我想讓一個Node.js Web服務器使用8個內核,並且我希望Java REST/API服務器使用另一個8 。即使API服務器可能處理來自其他地方的請求,Node也會通過本地主機進行API調用。Node.js集羣模塊:與其他進程共享內核不重疊
我正在使用Node的集羣模塊來完成此操作;基本上,做cluster.fork()
8倍。我假設Java有自己的方式來利用X核心,但其他人正在編寫該軟件。
從節點的角度來看,我需要做些什麼來確保我的代碼不能在Java運行的任何相同內核上運行?似乎很簡單,運行fork()
n/2次,其中n = numCpus,如果這就是我所需要擔心的,很好,但我想問這個問題以確保我不會錯過重要的東西。
在node.js中,您可以分叉n/2次。但是更大的問題將是如果Java中的nodejs使用哪些n/2核心,那麼通過java可以完全相同。 :) – mithunsatheesh 2014-10-03 17:33:49
運行'fork()'會產生一個新的進程,是的,但沒有可行的方法來保持核心進程而不使用某種虛擬化。 – 2014-10-03 17:59:28