Ребят, всем привет!
Есть два микросервиса, надо между ними шарить данные (мапы, блокировки).
Настраиваю так:
app1
@Configuration
public class HazelCastConfig {
@Bean
public HazelcastInstance hazelcastInstance() {
Config config = new Config();
config.getGroupConfig().setName("devCluster");
config.getNetworkConfig().setPort(5702);
JoinConfig joinConfig = config.getNetworkConfig().getJoin();
joinConfig.getMulticastConfig().setEnabled(false);
joinConfig.getTcpIpConfig().setEnabled(true)
.addMember("127.0.0.1:5701");
return Hazelcast.newHazelcastInstance(config);
}
}
app2
@Configuration
public class HazelCastConfig {
@Bean
public HazelcastInstance hazelcastInstance() {
Config config = new Config();
config.getGroupConfig().setName("devCluster");
config.getNetworkConfig().setPort(5701);
JoinConfig joinConfig = config.getNetworkConfig().getJoin();
joinConfig.getMulticastConfig().setEnabled(false);
joinConfig.getTcpIpConfig().setEnabled(true)
.addMember("127.0.0.1:5702");
return Hazelcast.newHazelcastInstance(config);
}
}
При запуске получаю такую ошибку
2022-10-25 14:07:35.203 WARN [/] --- [.IO.thread-in-2] c.h.n.t.TcpIpConnection : [127.0.0.1]:5702 [devCluster] [3.12.5] Connection[id=2, /127.0.0.1:5702->/127.0.0.1:32770, qualifier=null, endpoint=null, alive=false, type=MEMBER] closed. Reason: Exception in Connection[id=2, /127.0.0.1:5702->/127.0.0.1:32770, qualifier=null, endpoint=null, alive=true, type=MEMBER], thread=hz._hzInstance_1_devCluster.IO.thread-in-2
java.lang.IllegalArgumentException: Packet versions are not matching! Expected -> 4, Incoming -> 72
at com.hazelcast.nio.PacketIOHelper.readFrom(PacketIOHelper.java:126) ~[hazelcast-3.12.5.jar:3.12.5]
at com.hazelcast.nio.tcp.PacketDecoder.onRead(PacketDecoder.java:61) ~[hazelcast-3.12.5.jar:3.12.5]
at com.hazelcast.internal.networking.nio.NioInboundPipeline.process(NioInboundPipeline.java:135) ~[hazelcast-3.12.5.jar:3.12.5]
at com.hazelcast.internal.networking.nio.NioThread.processSelectionKey(NioThread.java:369) [hazelcast-3.12.5.jar:3.12.5]
at com.hazelcast.internal.networking.nio.NioThread.processSelectionKeys(NioThread.java:354) [hazelcast-3.12.5.jar:3.12.5]
at com.hazelcast.internal.networking.nio.NioThread.selectLoop(NioThread.java:280) [hazelcast-3.12.5.jar:3.12.5]
at com.hazelcast.internal.networking.nio.NioThread.run(NioThread.java:235) [hazelcast-3.12.5.jar:3.12.5]
И, что самое интересное (нет), после некоторого количества таких ворнингов (минуты через 2-3) кластер таки собирается и микросервис запускается!
Версии зависимостей одинаковые в микросервисах.
Может кто подскажет что не так?