摘要: Macos自定义Docker Ubuntu镜像 下载镜像 docker pull ubuntu:24.04 启动 docker run -it ubuntu:24.04 /bin/bash 配置镜像源 见底部 Q1.Arm64, Macos配置镜像源 安装ip指令 见底部 Q2.报错ip:comma 阅读全文
posted @ 2024-11-18 23:55 INnoVation-V2 阅读(5) 评论(0) 推荐(0) 编辑
摘要: Part A:无快照的KVServers KVServer整体结构如下 每个KvServer对应一个Raft Server,该Raft Server可能是Leader或Follower Client向KVServer发送请求,如果该KVServer对应的Raft Server不是Leader,直接返 阅读全文
posted @ 2024-09-27 00:34 INnoVation-V2 阅读(5) 评论(0) 推荐(0) 编辑
摘要: Lab 4: Fault-tolerant Key/Value Service 一、介绍 本次Lab将使用Lab3的Raft库构建容错键/值存储服务。您的KV服务将是一个复制状态机,由多个Server组成,每个Server维护一个KV数据库,就像Lab2一样,使用Raft保证Server状态一致。只 阅读全文
posted @ 2024-09-27 00:32 INnoVation-V2 阅读(18) 评论(0) 推荐(0) 编辑
摘要: Raft算法 State 所有server都有的持久化状态 先存储,然后响应RPC currentTerm 当前任期,初始为0,单调递增 votedFor 当前任期投票给谁了,没有就是null log[] 日志条目,每个条目都包含命令、Leader收到条目时的任期,第一个条目的index为1 所有s 阅读全文
posted @ 2024-09-24 23:42 INnoVation-V2 阅读(12) 评论(0) 推荐(0) 编辑
摘要: Part 3A: leader election 1.选举主要流程 新服务器加入集群 服务器在启动时状态是Follower。只要持续接收到Leader或Candidate的心跳信息,就继续保持Follower状态。 开始选举 每个Server都有一个随机的选举超时时间,选举超时在一个固定区间内随机选 阅读全文
posted @ 2024-09-24 23:41 INnoVation-V2 阅读(9) 评论(0) 推荐(0) 编辑
摘要: Lab3 Raft 1.Getting Started 代码位置: 基础框架代码位置:src/raft/raft.go 测试代码:src/raft/test_test.go 建议测试时使用-race 2.The code 向raft/raft.go添加代码来实现Raft。 实现必须支持以下接口 // 阅读全文
posted @ 2024-09-24 23:41 INnoVation-V2 阅读(12) 评论(0) 推荐(0) 编辑
摘要: Tmux使用介绍 原文地址 一、安装 # Ubuntu 或 Debian sudo apt-get install tmux # CentOS 或 Fedora sudo yum install tmux # Mac brew install tmux 启动与退出 直接在终端中键入tmux指令,即可 阅读全文
posted @ 2024-09-01 14:29 INnoVation-V2 阅读(32) 评论(0) 推荐(0) 编辑
摘要: 6.5840 Lab 2: Key/Value Server 1.Introduction 本次Lab将构建一个单机的键值服务器,该服务器保证即使存在网络故障,每个操作也都只执行一次,并且这些操作线性化执行。后续Lab中,将复制这样的服务器来处理服务器崩溃的情况。 键值服务器支持三种RPC(远程过程 阅读全文
posted @ 2024-08-27 17:18 INnoVation-V2 阅读(46) 评论(0) 推荐(0) 编辑
摘要: 一、非并行版本分析 1.非并行版本MapReduce流程 通过第一个参数,传入Map和Reduce 函数 之后的参数为待处理文件名 读取文件 调用Map函数,对文件内容进行处理,生成KV对 对KV对进行sort 按照Key进行分组,然后对每组数据调用Reduce 将结果写入文件 二、Lab思路 概述 阅读全文
posted @ 2024-08-25 18:11 INnoVation-V2 阅读(15) 评论(0) 推荐(0) 编辑
摘要: Lab 1: MapReduce 目标:实现一个MapReduce系统。其中包含: worker进程:调用Map和Reduce程序并处理文件的读写 coordinator进程:负责将任务分发给worker并处理失败的worker。(注:本Lab使用coordinator而不是论文的master进行管 阅读全文
posted @ 2024-08-25 18:10 INnoVation-V2 阅读(11) 评论(0) 推荐(0) 编辑