js
2015-10-15 11:07:33 3 举报
JavaScript是一种高级的、解释型的编程语言,由Netscape公司的Brendan Eich于1995年创建。它主要用于网页和网络应用程序的开发,是一种基于原型、多范式的动态脚本语言,支持面向对象、命令式和函数式编程风格。JavaScript代码可以直接嵌入HTML页面中,也可以通过各种浏览器插件或者Node.js运行环境在服务器端运行。JavaScript的主要特点包括弱类型、事件驱动、异步处理等,它的语法简洁明了,易于学习和使用。此外,JavaScript还拥有丰富的内置对象和函数库,以及与各种Web标准和技术的紧密集成,使得开发者能够轻松地构建出高效、交互性强的网页应用。
作者其他创作
大纲/内容
Y
发送投票(都投自己)
N
接收来自各个服务器的投票
处理投票
变更状态
logicalclock++
发送初始化选票
Leader异常,所有非Observer都将自己的状态变更为LOOKING
先比较轮次轮次相等比较ZXIDZXID相等比较SID(myid)
外部小于内部忽略
服务器启动时的选举
选票PK
变更投票
更新服务器状态
将初始化选票放入sendqueue队列中,由WorkSender发送出去
(如果是Leader则状态变成LEADING;Follower状态变更为FOLLOWING)
判断选举轮次
完成选举
统计投票(选出票数过半的服务器)
只有同一个选举轮次的投票才是有效的投票
外部大于内部
投票是否过半
LOOKING状态
Server
统计投票
服务器运行期间的选举
该变量用于标识当前Leader 的选举轮次,自增标识开始新一轮投票
是否变更投票
接收外部投票
发送选票
(如果ZXID或者myid大于自己,则更新自己的投票并重新发出去;如果自己就是最大的,则再一次发出上一次投票信息)
初始化选票(初始化Vote属性)
0 条评论
下一页