【发布时间】:2018-07-07 14:15:19
【问题描述】:
我遇到了嵌入式 InfiniSpan 缓存问题,其中节点在重新加入集群时超时。
Caused by: org.infinispan.util.concurrent.TimeoutException: ISPN000476: Timed out waiting for responses for request 7 from vvshost
at org.infinispan.remoting.transport.impl.SingleTargetRequest.onTimeout(SingleTargetRequest.java:64)
at org.infinispan.remoting.transport.AbstractRequest.call(AbstractRequest.java:86)
at org.infinispan.remoting.transport.AbstractRequest.call(AbstractRequest.java:21)
让节点重新加入的唯一方法是关闭缓存并删除所有本地缓存持久性文件。
这是我正在使用的配置:
交通:
- TransportConfigurationBuilder - defaultClusteredBuild
- JMX 统计信息 - 已启用
- 重复域 - 允许
缓存管理器:
- 管理器类 - EmbeddedCacheManager
- 内存 - 内存大小:0
- 持久性:单一文件存储
- 异步:禁用
- 集群缓存模式 - CacheMode.DIST_SYNC
【问题讨论】:
-
很遗憾这是信息太少。理想情况下,您应该在
org.infinispan和org.jgroups上设置跟踪日志,并捕获目标机器上所有线程的堆栈跟踪转储。在那里你可以跟踪请求并找到它被卡住的地方。 -
了解您使用的 Infinispan 版本、传输方式(TCP 或 UDP)...等也很重要。如果可能,请尝试最新的 Infinispan 版本。
标签: java caching infinispan