
6.5840/6.824
文章平均质量分 79
八荒被注册了
这个作者很懒,什么都没留下…
展开
-
6.584-Lab5B
表示的不是清理 Gid1 中的 shard2,而表示的是要清理 shard2 之前带过的 Gid2 中的 shard2。接收来自客户发出的命令(实际生产中的用户,作业中是test程序),作业中实现的是KV Service 所以命令只包含。,在垃圾清理的时候,找到 shard2 在旧的 Config 的位置也就是 Gid_2,把 Gid_2 中的。,却找的是要清理的 Shard2 的正确的位置即 Gid_2。直接判断的,但是发现在其他文件中访问 Raft 层的话,只能访问 Raft 层实现的。原创 2024-12-09 20:49:56 · 684 阅读 · 0 评论 -
6.584-Lab5A
kvraft。原创 2024-12-03 21:59:26 · 1076 阅读 · 0 评论 -
6.584-Lab4B
Lab4B:当底层的 Raft 中的日志 log 过大时,上层的 K/V Server 会生成快照SnapShot,并将底层 Raft 的 log 中已经被 K/V Server生成快照的部分截断,从而减短底层 Raft 的 log 的长度,减少内存压力。本次文章旨在记录 参考实现相关代码过程中的理解,具体代码请参考上面的 【Reference Code】。原创 2024-11-29 11:55:30 · 718 阅读 · 0 评论 -
6.584-Lab4A
包含 Clerk 与 Service 进行 RPC 的 Args、Reply 结构体。由于 Put 和 Append 命令都包含一个 Key 和 Value,所以可以将 Put & Append 信息合并为同一个结构体。Op来区分 Put 和Append;Identifier:表示这个命令来自哪个 Clerk;Seq:表示这个命令来自 Clerk 的第几条命令;IdentifierSeq共同构成了命令的唯一标号。Key stringSeq uint64Err ErrGet 命令只包含一个 Key。原创 2024-11-27 21:32:55 · 994 阅读 · 0 评论 -
6.584-Lab2&Lab3(3A-3D)
定义 RPC 的 args 和 Reply 的时候,结构体里面的字段必须首字母大写,否则调用 RPC 会报错。lab2A要求实现一个 Key/Value server 较为简单。可以尝试写一下,具体可以参考。本人通过学习以下贴出的文章实现的代码均通过了各个作业的测试。本篇文章记录一下自己实现。原创 2024-11-24 16:22:03 · 266 阅读 · 0 评论 -
6.584-Lab1:MapReduce
在提供的排序方法的底层都分别实现了三个函数Len()Less()Swap(),所以在我们实现自定义类型排序的时候要实现上述三个函数。原创 2024-11-13 21:45:45 · 1226 阅读 · 0 评论 -
A tour of Go - Web Crawler
UrlsStatue使用普通map,不能保证并发安全,所以要加一个互斥锁。原创 2024-11-11 19:56:36 · 396 阅读 · 0 评论