【发布时间】:2014-08-25 14:40:39
【问题描述】:
我有一个非常简单的设置,只有两个节点,使用 hazelcast 3.2.5。第一个节点的启动时间约为 3 秒,第二个节点仅使用 getTcpIpConfig 在大约 10 秒内启动。我试图通过
来改善启动时间System.setProperty("hazelcast.local.localAddress", "127.0.0.1");
按照here 的建议,但没有任何改善。然后我尝试了:
System.setProperty(GroupProperties.PROP_WAIT_SECONDS_BEFORE_JOIN, "1");
这将第二个节点的启动时间减少到 6 秒。
这是我对两个节点的配置:
Config cfg = new Config();
NetworkConfig nCfg = cfg.getNetworkConfig();
nCfg.getJoin().getMulticastConfig().
setEnabled(false);
nCfg.getJoin().getAwsConfig().
setEnabled(false);
nCfg.getJoin().getTcpIpConfig().
setConnectionTimeoutSeconds(5).
addMember("127.0.0.1:5701,127.0.0.1:5702").
setEnabled(true);
大部分时间花在SocketConnector(0.5s)、TcpIpConnectionManager(2.5s)和ClusterService(2s)等其他地方。
我希望将两个启动时间都降低到 3 以下。这有可能吗?
如果没有,我可以以某种方式启动节点,然后只从数据库加载数据并加入集群吗?
【问题讨论】:
标签: hazelcast