0
点赞
收藏
分享

微信扫一扫

Pytorch添加自定义算子之(5)-配置GPU形式的简单add自定义算子

文章目录

原理

选举机制(重点)

情况1:正常启动集群

在这里插入图片描述

集群中5台zookeeper机器依次启动后选举领导的整个过程
在这里插入图片描述

情况2:集群启动完,中途有机器挂了

监听器


在这里插入图片描述

监听数据的变化
在这里插入图片描述

监听子节点增删的变化
在这里插入图片描述

客户端向服务端写入数据

客户端向服务端Leader节点写入

在这里插入图片描述

客户端向服务端Follower节点写入

在这里插入图片描述

Paxos算法(每个节点都可以提议者)

在这里插入图片描述


Paxos算法完美情况
在这里插入图片描述


Paxos算法弊端
在这里插入图片描述

ZAB协议算法 - Paxos算法的改良 - 集群仅能一位提议者(即Leader)

认识

此图对应的是上图的流程图
在这里插入图片描述

崩溃恢复

Leader挂,重新选举

数据恢复

CAP理伦

脚本

集群统一启动、关闭、状态查看脚本

zk.sh

#!/bin/bash
# 运行此脚本前必须把当前机器人的公私密钥给到目标运行机器 == 要不然每次运行此脚本时都会叫你输入每台目标机器的密码
# 命令1(本机生成RSA公私密钥):ssh-keygen -t rsa
# 命令2(将密钥传给目标三台机器即192.168.19.107、192.168.19.108、192.168.19.109 ):ssh-copy-id root@目标机器IP




for currentHostName in 192.168.19.107 192.168.19.108 192.168.19.109
do
	echo "=================zookeeper【${currentHostName}】【$1】==============================="
	case $1 in
	"start") {
	  ssh $currentHostName "cd /opt/module/zookeeper-3.9.1 && sh bin/zkServer.sh start"
	}
	;;


	"stop") {
	  ssh $currentHostName "cd /opt/module/zookeeper-3.9.1 && sh bin/zkServer.sh stop"
	}
	;;

	"status") {
	  ssh $currentHostName "cd /opt/module/zookeeper-3.9.1 && sh bin/zkServer.sh status"
	}
	;;

	*) {
	  echo "未知命令,仅支持start|stop|status"
	}

	esac


done

在这里插入图片描述

源码分析(粗略)

辅助源码

持久化

在这里插入图片描述

序列化

在这里插入图片描述

服务端启动流程

在这里插入图片描述

服务端选举Leader流程

在这里插入图片描述

Leader、Follower数据同步流程

在这里插入图片描述

服务端Leader启动Zk过程

在这里插入图片描述

服务端Follower启动Zk过程

在这里插入图片描述

客户端连接Zk服务端过程

在这里插入图片描述


刚兴趣的同行可以进群沟通交流,内置机器人供大家愉快

在这里插入图片描述

举报

相关推荐

0 条评论