在另一个实例脱机后,NCache集群高速缓存在单个集群上运行的问题

时间:2018-03-28 09:55:51

标签: ncache

我们有一个带有两个实例的复制群集缓存设置,当两个实例都联机时,一切运行良好,我们正在使用Community Edition 4.8。

当我们将实例脱机时,缓存管理变得非常慢,甚至停止并从NCache Manager GUI启动缓存需要很长时间,然后显示一条消息,指出存在无法访问的实例。

此外,当尝试从缓存中获取数据或向其添加数据时,它会提供操作超时的异常,并且没有来自仍在运行的单个实例的响应。

根据我的理解,这个场景应该由缓存服务自己处理,因为它被复制,它应该处理实例脱机的失败。

谢谢,

1 个答案:

答案 0 :(得分:0)

我想解释当其中一个服务器节点从缓存集群中删除时应用程序运行缓慢的原因。

当节点从缓存集群中删除时,幸存的节点/节点进入恢复过程并尝试重新建立与该服务器节点的连接。默认情况下,此连接重试值设置为“2”,这意味着幸存的节点将尝试与已关闭的节点重新连接两次,并且在重新连接失败后,缓存群集将考虑已关闭的服务器并离线,群集将启动像以前一样处理请求。此重新连接过程最多可能需要90秒,因为这是默认的TCP / IP超时间隔,如果连接重试设置为“2”,则恢复过程可能需要大约200秒。当群集处于恢复模式时,您的应用程序(或NCache Manager调用)可能会在2-3分钟窗口期间遇到缓慢或请求超时,但一旦恢复过程完成,应用程序应该开始工作而没有任何问题。如果缓慢或请求超时持续超过几分钟

可以从NCache“Config.ncconf”文件更改“连接重试”值。增加连接重试次数意味着群集将在恢复过程中花费更多时间。此功能的目的是,如果环境中存在网络故障并且服务器节点彼此失去连接,则由于此恢复过程,服务器将自动重新连接。这就是为什么建议将连接重试间隔设置为至少为1的原因。