gpt4 book ai didi

erlang - 如何监控已关闭并正在重新启动的远程 erlang 节点

转载 作者:行者123 更新时间:2023-12-02 06:58:35 25 4
gpt4 key购买 nike

我的应用程序在 erlang 集群中运行 - 通常有两个或更多节点。节点之间有主动监控(使用 erlang:monitor_node),工作得很好 - 我可以检测到一个正在运行的节点现在已关闭的事实并使用react。

但是我如何发现节点已重新启动并恢复正常工作?当然,我可以定期对节点执行 ping 操作,直到其恢复,但是有没有更好的方法是我错过的呢?流程组是实现这一目标的更好方法吗?

(编辑添加)

我认为执行诸如选举主管之类的技术的答案是我所缺少的思维过程。我会调查这一点并将这个问题标记为已完成......

最佳答案

But how do I then find out that the node has restarted and is back in business? I can of course periodically ping the node until it is back up, but is there a better way that I've simply missed? Is process groups a better way of achieving this?

只是一个想法,但是如何让重新启动的节点本身明确通知主管/监控节点它已完成重新启动并且再次可用?

您可以使用重复的“心跳消息”来实现此目的,或者提出一条专门用于在成功初始化后发送一次的自定义消息。大致如下:

start(SupervisorPID) ->
SuperVisorPID ! {hello, MyPID};
mainloop().

关于erlang - 如何监控已关闭并正在重新启动的远程 erlang 节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/984068/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com