心跳和重启

心跳机制

心跳机制是 Keeper 的核心机制,节点在每分钟 0 秒时心跳。Keeper 程序由多个组件(Actor)组成,每个组件执行不同的功能。Keeper 的心跳会传递给这些组件,即让这些组件也进行心跳。所以,如果组件的心跳时间离当前时间太远,说明节点出现了问题。

这些组件包括:

重启和关机

一般情况下, Keeper 在运行起来之后无需关机或重启。重启功能主要为了升级版本需要或应对不可预知的特殊情况。 重启需要预先设置 crontab,请参照安装 Qross 系统。如果没有设置 crontab 或关闭了 crontab,则会退出 Keeper 程序。即 crontab 是对 Keeper 的保护,防止 Keeper 异常退出,在检测不到 Keeper 进程时,会自动重启 Keeper。

重启功能不同于在操作系统中的 kill 命令,重启过程如下:

重启过程比较慢,因为需要等待已运行的调度任务执行完且各个组件关闭,所以建议在调度任务运行少的时间段进行重启。重新过程中可以“强制关闭”,但强烈不建议这么做,强制关闭只会杀掉 Keeper 进程,但不会中断正在运行的调度任务。在 Keeper 重启时,Keeper 会重新启动未执行完的任务,所以可能会造成这些调度任务的结果不正确。

在重启过程中,会在页面上不断刷新 Keeper 运行日志,可根据运行日志了解 Keeper 的启动过程。Keeper Http 服务关闭后不再能获取 Keepr 运行日志,会提示红色的 “Connection refused: connect”。


参考链接


微信公众号
码农老吴  |  星源工作室  |  开发月志  |  问题反馈
联系我们:wu@qross.io     手机/微信:18618171102
京 ICP 备 20027445 号
$(h1)!