<rss xmlns:atom="http://www.w3.org/2005/Atom" version="2.0">
    <channel>
        <title>Distributed Systems - Tag - 华子的博客</title>
        <link>https://guluguluhhhh.github.io/tags/distributed-systems/</link>
        <description>Distributed Systems - Tag - 华子的博客</description>
        <generator>Hugo -- gohugo.io</generator><language>zh-CN</language><lastBuildDate>Sat, 14 Jun 2025 17:51:06 &#43;0800</lastBuildDate><atom:link href="https://guluguluhhhh.github.io/tags/distributed-systems/" rel="self" type="application/rss+xml" /><item>
    <title>PolarDB MP</title>
    <link>https://guluguluhhhh.github.io/polardb-mp/</link>
    <pubDate>Sat, 14 Jun 2025 17:51:06 &#43;0800</pubDate>
    <author>huazi</author>
    <guid>https://guluguluhhhh.github.io/polardb-mp/</guid>
    <description><![CDATA[<h1 id="摘要">摘要</h1>
<p>传统的主从架构（<strong>Primary- secondary</strong>）数据库的写入能力有限，因为其使用单个主节点来写入，从节点只是同步数据。所以一些系统采用无共享架构（<strong>shared-nothing</strong>），实现了可扩展的多主节点集群，但带来了分布式事务的开销和性能损失。最近，出现基于共享存储（<strong>shared-stroage</strong>）的多主节点云原生数据库，存算分离，避免了分布式事务，但在高冲突场景下仍表现不佳，原因有冲突解决、数据融合等。</p>]]></description>
</item>
<item>
    <title>Mit6.5840 Raft</title>
    <link>https://guluguluhhhh.github.io/mit6.5840-raft/</link>
    <pubDate>Sun, 02 Mar 2025 18:49:48 &#43;0800</pubDate>
    <author>huazi</author>
    <guid>https://guluguluhhhh.github.io/mit6.5840-raft/</guid>
    <description><![CDATA[<h2 id="3a-领导人选举">3A 领导人选举</h2>
<p>3A主要实现的是领导者选举和心跳（没有日志条目的<code>AppendEntries</code>RPC）。</p>
<p>基本上根据论文的图2来定义结构体。Raft结构体加上electionTimeOut bool来标记某个服务器是否超时，超时未收到心跳需要发起新一轮选举。
</p>]]></description>
</item>
<item>
    <title>Raft论文阅读记录</title>
    <link>https://guluguluhhhh.github.io/raft/</link>
    <pubDate>Thu, 20 Feb 2025 14:24:11 &#43;0800</pubDate>
    <author>huazi</author>
    <guid>https://guluguluhhhh.github.io/raft/</guid>
    <description><![CDATA[<h1 id="摘要">摘要</h1>
<p>Raft是一种用于管理复制日志的共识算法。它的结果等价与Paxos，并且效率相当，但它的结构更容易理解。为了增强可理解性，Raft将共识的关键要素（例如领导者选举、日志复制和安全性）分离开来，并强制执行更强的一致性要求，从而减少了需要考虑的状态数量。此外，Raft 还引入了一种新的集群成员变更机制，该机制通过使用重叠的多数派来保证安全性。</p>]]></description>
</item>
<item>
    <title>Mit6.5840 KVServer</title>
    <link>https://guluguluhhhh.github.io/mit6.5840-kvserver/</link>
    <pubDate>Tue, 18 Feb 2025 16:00:38 &#43;0800</pubDate>
    <author>huazi</author>
    <guid>https://guluguluhhhh.github.io/mit6.5840-kvserver/</guid>
    <description><![CDATA[<h1 id="keyvalue-server">Key/Value Server</h1>
<p>本次试验中，将为一台机器构建一个键值服务器，该服务器确保即使网络故障，每个操作<strong>也只执行一次</strong>，且操作是<strong>线性化</strong>的。后面的实验将会复制这样的服务器来处理服务器崩溃。</p>]]></description>
</item>
<item>
    <title>Mit6.5840 MapReduce</title>
    <link>https://guluguluhhhh.github.io/mit6.5840-mapreduce/</link>
    <pubDate>Sat, 15 Feb 2025 14:45:18 &#43;0800</pubDate>
    <author>huazi</author>
    <guid>https://guluguluhhhh.github.io/mit6.5840-mapreduce/</guid>
    <description><![CDATA[<h1 id="mapreduce">MapReduce</h1>
<p>这次实验将构建一个MapReduce系统。需要实现一个<strong>worker</strong>进程，它调用应用程序<strong>Map</strong>和<strong>Reduce</strong>函数并处理阅读和写入文件，以及一个<strong>coordinator</strong>进程，它将任务分发给worker并处理失败的worker。</p>]]></description>
</item>
</channel>
</rss>
