2014-02-10 64 views

回答

0

在Linux或Mac OS上的同一臺計算機上啓動的GridGain節點將嘗試使用高吞吐量共享內存協議而不是TCP連接到對方。但是,Mac OS中系統資源的默認限制極低,不能在同一個盒子上的多個節點之間使用共享內存IPC通信。增加共享存儲器的限制,在終端執行以下命令:

ulimit -n 4096 
launchctl limit maxfiles 100000 100000 
sudo sysctl -w kern.sysv.shmmax=33554432 
sudo sysctl -w kern.sysv.shmall=33554432 
sudo sysctl -w kern.sysv.shmseg=1024 
sudo sysctl -w kern.sysv.shmmni=32 

這些值應該足以運行到與共享存儲器通信5個節點。如果您需要啓動更多節點,請相應更改值。例如,爲了能夠啓動10個節點,上面的每個值都應該加倍。

上述更改僅在重新啓動之前生效。爲了讓他們執着,添加以下內容/etc/launchd.conf(您可能需要創建一個):

limit maxfiles 100000 100000 

,下面的內容/etc/sysctl.conf(您可能還需要創建一個):

kern.maxfiles=40000 
kern.maxfilesperproc=20000 
kern.sysv.shmmax=33554432 
kern.sysv.shmall=33554432 
kern.sysv.shmseg=1024 
kern.sysv.shmmni=32 

之後,您的更改將繼續重新啓動。

TCP後備

注意,當一個節點發生故障分配共享存儲器段,將透明地切換到TCP通信。