Windows平台开发了心跳机制
发布时间
阅读量:
阅读量
背景
目前正在进行毕业设计的相关工作,其中涉及Windows系统中节点通信技术(包括UDP/TCP套接字通信)以及节点间的心跳检测机制。此前并未接触过相关知识,因此查阅了若干篇技术博客,并结合近期学习的UNIX环境下套接字编程理论(幸运的是,其中部分函数与原理同样适用于Windows平台)。
Windows平台UDP节点通信实现
上边链接中的博客在运行的时候会出现一些bug,需要对自己的VS运行环境稍作修改,具体操作见:
小项目概述
1 构建一个由三个节点组成的集群,其中包括一个主节点和两个工作节点。
2 每个节点均具备各自的能力值(即对CPU与内存的综合评估),并拥有独立的端口号及IP地址。由于所有节点均部署在同一台机器上,因此采用进程方式来模拟各个节点,使得每个节点的IP地址统一为localhost。
3 当前该集群的主要职责是,工作节点需按照设定频率通过心跳机制来确认主节点是否处于正常运行状态。在此机制中,主节点会定期向工作节点发送alive信息,若工作节点在预设的超时时间内未能接收到该信息,则判定主节点已失效。
4 在默认设置下,recvfrom函数具有阻塞特性。为了实现超时后自动返回的功能,可以借助IO复用技术中的select方法,将阻塞模式转换为非阻塞模式。此时,
全部评论 (0)
还没有任何评论哟~
