在我的单元测试中,我想创建一个不尝试启动或执行任何网络操作的嵌入式(进程中/内存中)Hazelcast实例.
我该怎么做?
例如:
Config config = new Config(); // what goes here? HazelcastInstance inProcessOnly = Hazelcast.newHazelcastInstance(config);
解决方法
FWIW我已经在Hazelcast 3.6.1中创建了一个测试,并使用构造函数中的以下代码编程地禁用了网络集群.这将创建一个用于测试的独立服务器.
它不如使用模拟器那么快,但它比接受默认配置更快.
Config config = new Config(); config.setProperty("hazelcast.shutdownhook.enabled","false"); NetworkConfig network = config.getNetworkConfig(); network.getJoin().getTcpIpConfig().setEnabled(false); network.getJoin().getMulticastConfig().setEnabled(false); HazelcastInstance instance = Hazelcast.newHazelcastInstance(config);