春季启动应用程序中的HazelCast抛出错误,您可能是Hazelcast配置太长

时间:2019-01-09 09:07:01

标签: spring-boot hazelcast

2019-01-09 09:29:04.290警告[api-gateway-server ,,,] 1 --- [cached.thread-3] chicluster.impl.MulticastService:[10.255.7.232]:5701 [ dev] [3.8.9]您的Hazelcast配置可能太长了!

java.io.IOException:不允许操作

at java.base/java.net.PlainDatagramSocketImpl.send(Native Method) ~[na:na]


at java.base/java.net.DatagramSocket.send(DatagramSocket.java:695) ~[na:na]


at com.hazelcast.internal.cluster.impl.MulticastService.send(MulticastService.java:252) ~[hazelcast-3.8.9.jar!/:3.8.9]


at com.hazelcast.internal.cluster.impl.MulticastJoiner.searchForOtherClusters(MulticastJoiner.java:112) ~[hazelcast-3.8.9.jar!/:3.8.9]


at com.hazelcast.internal.cluster.impl.SplitBrainHandler.searchForOtherClusters(SplitBrainHandler.java:75) ~[hazelcast-3.8.9.jar!/:3.8.9]


at com.hazelcast.internal.cluster.impl.SplitBrainHandler.run(SplitBrainHandler.java:42) ~[hazelcast-3.8.9.jar!/:3.8.9]


at com.hazelcast.spi.impl.executionservice.impl.DelegateAndSkipOnConcurrentExecutionDecorator$DelegateDecorator.run(DelegateAndSkipOnConcurrentExecutionDecorator.java:66) ~[hazelcast-3.8.9.jar!/:3.8.9]


at com.hazelcast.util.executor.CachedExecutorServiceDelegate$Worker.run(CachedExecutorServiceDelegate.java:227) ~[hazelcast-3.8.9.jar!/:3.8.9]


at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) ~[na:na]


at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) ~[na:na]


at java.base/java.lang.Thread.run(Thread.java:834) ~[na:na]


at com.hazelcast.util.executor.HazelcastManagedThread.executeRun(HazelcastManagedThread.java:64) ~[hazelcast-3.8.9.jar!/:3.8.9]


at com.hazelcast.util.executor.HazelcastManagedThread.run(HazelcastManagedThread.java:80) ~[hazelcast-3.8.9.jar!/:3.8.9]

2019-01-09 09:29:06.949警告[api-gateway-server ,,,] 1 --- [cached.thread-5] chicluster.impl.MulticastService:[10.255.7.232]:5702 [ dev] [3.8.9]您的Hazelcast配置可能太长了!

java.io.IOException:不允许操作

at java.base/java.net.PlainDatagramSocketImpl.send(Native Method) ~[na:na]


at java.base/java.net.DatagramSocket.send(DatagramSocket.java:695) ~[na:na]


at com.hazelcast.internal.cluster.impl.MulticastService.send(MulticastService.java:252) ~[hazelcast-3.8.9.jar!/:3.8.9]


at com.hazelcast.internal.cluster.impl.MulticastJoiner.searchForOtherClusters(MulticastJoiner.java:112) ~[hazelcast-3.8.9.jar!/:3.8.9]


at com.hazelcast.internal.cluster.impl.SplitBrainHandler.searchForOtherClusters(SplitBrainHandler.java:75) ~[hazelcast-3.8.9.jar!/:3.8.9]


at com.hazelcast.internal.cluster.impl.SplitBrainHandler.run(SplitBrainHandler.java:42) ~[hazelcast-3.8.9.jar!/:3.8.9]


at com.hazelcast.spi.impl.executionservice.impl.DelegateAndSkipOnConcurrentExecutionDecorator$DelegateDecorator.run(DelegateAndSkipOnConcurrentExecutionDecorator.java:66) ~[hazelcast-3.8.9.jar!/:3.8.9]


at com.hazelcast.util.executor.CachedExecutorServiceDelegate$Worker.run(CachedExecutorServiceDelegate.java:227) ~[hazelcast-3.8.9.jar!/:3.8.9]


at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) ~[na:na]


at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) ~[na:na]


at java.base/java.lang.Thread.run(Thread.java:834) ~[na:na]


at com.hazelcast.util.executor.HazelcastManagedThread.executeRun(HazelcastManagedThread.java:64) ~[hazelcast-3.8.9.jar!/:3.8.9]


at com.hazelcast.util.executor.HazelcastManagedThread.run(HazelcastManagedThread.java:80) ~[hazelcast-3.8.9.jar!/:3.8.9]

2019-01-09 09:29:09.387警告[api-gateway-server ,,,] 1 --- [cached.thread-1] chicluster.impl.MulticastService:[10.255.7.232]:5703 [ dev] [3.8.9]您的Hazelcast配置可能太长了!

java.io.IOException:不允许操作

at java.base/java.net.PlainDatagramSocketImpl.send(Native Method) ~[na:na]


at java.base/java.net.DatagramSocket.send(DatagramSocket.java:695) ~[na:na]


at com.hazelcast.internal.cluster.impl.MulticastService.send(MulticastService.java:252) ~[hazelcast-3.8.9.jar!/:3.8.9]


at com.hazelcast.internal.cluster.impl.MulticastJoiner.searchForOtherClusters(MulticastJoiner.java:112) ~[hazelcast-3.8.9.jar!/:3.8.9]


at com.hazelcast.internal.cluster.impl.SplitBrainHandler.searchForOtherClusters(SplitBrainHandler.java:75) ~[hazelcast-3.8.9.jar!/:3.8.9]


at com.hazelcast.internal.cluster.impl.SplitBrainHandler.run(SplitBrainHandler.java:42) ~[hazelcast-3.8.9.jar!/:3.8.9]


at com.hazelcast.spi.impl.executionservice.impl.DelegateAndSkipOnConcurrentExecutionDecorator$DelegateDecorator.run(DelegateAndSkipOnConcurrentExecutionDecorator.java:66) ~[hazelcast-3.8.9.jar!/:3.8.9]


at com.hazelcast.util.executor.CachedExecutorServiceDelegate$Worker.run(CachedExecutorServiceDelegate.java:227) ~[hazelcast-3.8.9.jar!/:3.8.9]


at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) ~[na:na]


at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) ~[na:na]


at java.base/java.lang.Thread.run(Thread.java:834) ~[na:na]


at com.hazelcast.util.executor.HazelcastManagedThread.executeRun(HazelcastManagedThread.java:64) ~[hazelcast-3.8.9.jar!/:3.8.9]


at com.hazelcast.util.executor.HazelcastManagedThread.run(HazelcastManagedThread.java:80) ~[hazelcast-3.8.9.jar!/:3.8.9]

1 个答案:

答案 0 :(得分:1)

异常消息You probably have too long Hazelcast configuration!具有误导性。即将发布的版本3.12已修复该问题。参见Github PR Fix exception message when multicast send fails

实际故障是底层操作系统不允许多播发送。主要原因是并行发送多播数据报。当您在同一主机上同时启动多个Hazelcast成员时,可能会发生这种情况。

有关更多信息;