【问题标题】:Zookeeper client node did not reconnect after session expired会话过期后 Zookeeper 客户端节点未重新连接
【发布时间】:2020-05-22 02:35:53
【问题描述】:

我使用自定义 TCP 监视器(类似于 TCPMon)拦截了 Zookeeper 服务器和客户端节点之间的连接。我停止了 TCPMon 并重新启动它。当我在会话到期后重新启动 TCPMon 时,通知客户端节点(“会话已过期”)但没有重新连接。怎么解决?

【问题讨论】:

    标签: apache-zookeeper


    【解决方案1】:

    一旦会话过期,您需要关闭 ZooKeeper 句柄并重新创建它。

    来自The Programmer's Guide - “一旦 ZooKeeper 对象关闭或收到致命事件(SESSION_EXPIRED 和 AUTH_FAILED),ZooKeeper 对象就会失效”

    【讨论】:

    • “关闭 ZooKeeper 句柄并重新创建它”具体意味着什么?我正在使用 CloudSolrServer。我猜想完全关闭我正在运行的 JVM 的时间比 zkClientTimeout 的作用要长得多,但显然它没有。调用myServer.shutdown(); myServer = new CloudSolrServer("zkHost:12345"); myServer.connect(); 似乎也不起作用。
    猜你喜欢
    • 2023-03-29
    • 2019-03-07
    • 2011-08-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-28
    • 2015-10-13
    相关资源
    最近更新 更多