- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在基于微服务和 springboot 的架构中使用 hazelcast 时遇到问题。我将其中一个应用程序保留为将成为 hazelcast 服务器的应用程序,而其他应用程序则是其客户端。但是,如果我必须更新作为 hazelcast 服务器的应用程序,缓存的客户端应用程序会覆盖与服务器的连接,并且当我启动新版本的服务器时,这些客户端应用程序不会重新连接。是否有任何关闭设置 hazelcastclient 在服务器上进行池化以尝试在它回来后立即重新连接?我的客户如下:
@bean open fun hazelcastInstance(): HazelcastInstance? { return try { val clientConfig = ClientConfig() HazelcastClient.newHazelcastClient(clientConfig) } catch (e: Exception) { log.error("Could not connect to hazelcast server, server up without cache") null }}
如果我的服务器出现故障,我会收到“com.hazelcast.client.HazelcastClientNotActiveException:客户端已关闭”。
如果你能帮助我,我将不胜感激
最佳答案
连接尝试限制和连接尝试周期配置元素有助于配置客户端的重新连接行为。客户端将重试 ClientNetworkConfig.connectionAttemptLimit
次以重新连接到集群。 Connection Attempt Period 是由 ClientNetworkConfig.connectionAttemptLimit
定义的连接尝试之间的持续时间(以毫秒为单位)。以下是如何配置它们的示例:
ClientConfig clientConfig = new ClientConfig();
clientConfig.getNetworkConfig().setConnectionAttemptLimit(5);
clientConfig.getNetworkConfig().setConnectionAttemptPeriod(5000);
从 Hazelcast 3.9 开始,您可以使用配置元素 reconnect-mode
来配置客户端在断开连接后如何重新连接到集群。它具有三个选项(OFF
、ON
或ASYNC
)。选项 OFF
禁用重新连接。 ON
以阻塞方式启用重新连接,所有等待的调用都将被阻塞,直到集群连接建立或失败。选项 ASYNC
以非阻塞方式启用重新连接,所有等待调用都将收到 HazelcastClientOfflineException
。它的默认值为 ON
。您可以在下面看到一个配置示例:
ClientConfig clientConfig = new ClientConfig();
clientConfig.getConnectionStrategyConfig()
.setReconnectMode(ClientConnectionStrategyConfig.ReconnectMode.ON);
关于java - 服务器重启后如何将 HazelcastClient 重新连接到 HazelcastServer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48055121/
我在基于微服务和 springboot 的架构中使用 hazelcast 时遇到问题。我将其中一个应用程序保留为将成为 hazelcast 服务器的应用程序,而其他应用程序则是其客户端。但是,如果我必
我是一名优秀的程序员,十分优秀!