
Geth 源码系列:存储设计及实现
在区块链的世界中,状态存储是每一个节点的「记忆核心」 — — 它记录着亿万账户的余额、合约的代码、交易的痕迹,甚至决定着一笔交易能否被正确执行。作为以太坊生态的基石,Geth 客户端如何以精密的架构设计承载海量状态数据?其存储系统如何在性能、安全与可扩展性之间找到平衡? 这篇文章是 Geth 源码系列的第二篇,通过这个系列,我们将搭建一个研究 Geth 实现的框架,开发者可以根据这个框架深入自己感兴趣的部分研究。这个系列共有六篇文章,在这第二篇文章中,将系统讲解 Geth 的存储结构设计与相关源码,介绍其数据库层次划分并详细分析各个层次中相应模块的核心功能。 以太坊作为全球最大的区块链平台,其主流客户端 Geth(Go-Ethereum)承担了绝大部分节点运行与状态管理的职责。Geth 的状态存储系统,是理解以太坊运行机制、优化节点性能、以及推动未来客户端创新的基础。 本文作者: po Web3buidler.tech Core Contributor, EthStorage Engineer Geth 底层数据库总览 自 Geth v1.9.0 版本起,Geth 将其数据库分为...

以太坊单独质押实战教程:手把手教你完成部署
内容丨Ray 编辑 & 排版丨Yewlne、环环 以太坊的单独质押(Solo Staking)是保护网络安全和去中心化的黄金标准。通过运行自己的验证者节点,您可以直接参与网络共识,获得完整的质押奖励,并保持对资金的完全控制。本教程将为您提供详细的指导,帮助您在家中部署以太坊单独质押节点,确保安全性和稳定性。前提概要首先,我们需要有这样的一个基本概念:要处理来自执行层的传入验证器存款,您需要运行执行客户端以及共识客户端。这意味着我们至少需要部署两个客户端程序(在本教程中,为三个,共识客户端按照功能进行了拆分)。如果想了解更多执行客户端和共识客户端的差异及功能职责,可以点击阅读: https://ethereum.org/zh/developers/docs/networking-layer/一、选择执行客户端以太坊生态的客户端种类非常丰富,执行客户端和共识客户端都有多种不同语言的实现,如使用 Go 语言实现的 Geth, 使用 Rust 语言实现的 Reth 等。你可以根据自己喜好,选择不同的客户端,整体流程是类似的,只是不同客户端实现涉及的命令不同。在这里,我们不能对所有的客户端...

残酷共学申请指南独家速递!
在知识爆炸的时代,面对海量且拥杂的学习资源、松散且淡薄的学习氛围,如何在工作之余合理安排以有效坚持学习,俨然已是一个艰巨的挑战。为此,LXDAO 特别发起了——残酷共学,旨在通过以自主、开源的学习方式,严格的残酷共学计划和互助的学习氛围,帮助每一位参与者有序可持续的学习,更进一步地实现自我提升。残酷共学是什么残酷共学是由 LXDAO 发起的围绕某个「共学主题」共学活动,具体如下:参与者必须每天围绕某个「共学主题」进行学习,每周只有两次请假机会,通常每天至少需要花费半个小时(最好一个小时)来学习。参与者必须提交你的学习证明(按照共学内容设计)到 GitHub 所对应的「仓库」来证明你今天学习了。如果参与者没有完成上面两点,将会立刻被踢掉并且标记为 ❌ 失败。每期残酷共学以 4 周为一个周期,第一周为共学启动报名和熟悉共学规则,第二周到第四周将正式启动共学,为期 21 天,中途不得加入。共学方向包括不限于:英语、以太坊、Web3 技术、DAO、加密思潮等,自由自主发起,内容包括不限于:视频、书籍、文章、实战。如何残酷共学基于 GitHub 的流程,残酷共学发起人在 Github上创建...
LXDAO 是一个专注研发的 DAO 组织,致力于构建支持有价值的公共物品和开源项目的无限循环。 LXDAO is an R&D-focused DAO dedicated to building an Infinite Cycle that supports valuable

Geth 源码系列:存储设计及实现
在区块链的世界中,状态存储是每一个节点的「记忆核心」 — — 它记录着亿万账户的余额、合约的代码、交易的痕迹,甚至决定着一笔交易能否被正确执行。作为以太坊生态的基石,Geth 客户端如何以精密的架构设计承载海量状态数据?其存储系统如何在性能、安全与可扩展性之间找到平衡? 这篇文章是 Geth 源码系列的第二篇,通过这个系列,我们将搭建一个研究 Geth 实现的框架,开发者可以根据这个框架深入自己感兴趣的部分研究。这个系列共有六篇文章,在这第二篇文章中,将系统讲解 Geth 的存储结构设计与相关源码,介绍其数据库层次划分并详细分析各个层次中相应模块的核心功能。 以太坊作为全球最大的区块链平台,其主流客户端 Geth(Go-Ethereum)承担了绝大部分节点运行与状态管理的职责。Geth 的状态存储系统,是理解以太坊运行机制、优化节点性能、以及推动未来客户端创新的基础。 本文作者: po Web3buidler.tech Core Contributor, EthStorage Engineer Geth 底层数据库总览 自 Geth v1.9.0 版本起,Geth 将其数据库分为...

以太坊单独质押实战教程:手把手教你完成部署
内容丨Ray 编辑 & 排版丨Yewlne、环环 以太坊的单独质押(Solo Staking)是保护网络安全和去中心化的黄金标准。通过运行自己的验证者节点,您可以直接参与网络共识,获得完整的质押奖励,并保持对资金的完全控制。本教程将为您提供详细的指导,帮助您在家中部署以太坊单独质押节点,确保安全性和稳定性。前提概要首先,我们需要有这样的一个基本概念:要处理来自执行层的传入验证器存款,您需要运行执行客户端以及共识客户端。这意味着我们至少需要部署两个客户端程序(在本教程中,为三个,共识客户端按照功能进行了拆分)。如果想了解更多执行客户端和共识客户端的差异及功能职责,可以点击阅读: https://ethereum.org/zh/developers/docs/networking-layer/一、选择执行客户端以太坊生态的客户端种类非常丰富,执行客户端和共识客户端都有多种不同语言的实现,如使用 Go 语言实现的 Geth, 使用 Rust 语言实现的 Reth 等。你可以根据自己喜好,选择不同的客户端,整体流程是类似的,只是不同客户端实现涉及的命令不同。在这里,我们不能对所有的客户端...

残酷共学申请指南独家速递!
在知识爆炸的时代,面对海量且拥杂的学习资源、松散且淡薄的学习氛围,如何在工作之余合理安排以有效坚持学习,俨然已是一个艰巨的挑战。为此,LXDAO 特别发起了——残酷共学,旨在通过以自主、开源的学习方式,严格的残酷共学计划和互助的学习氛围,帮助每一位参与者有序可持续的学习,更进一步地实现自我提升。残酷共学是什么残酷共学是由 LXDAO 发起的围绕某个「共学主题」共学活动,具体如下:参与者必须每天围绕某个「共学主题」进行学习,每周只有两次请假机会,通常每天至少需要花费半个小时(最好一个小时)来学习。参与者必须提交你的学习证明(按照共学内容设计)到 GitHub 所对应的「仓库」来证明你今天学习了。如果参与者没有完成上面两点,将会立刻被踢掉并且标记为 ❌ 失败。每期残酷共学以 4 周为一个周期,第一周为共学启动报名和熟悉共学规则,第二周到第四周将正式启动共学,为期 21 天,中途不得加入。共学方向包括不限于:英语、以太坊、Web3 技术、DAO、加密思潮等,自由自主发起,内容包括不限于:视频、书籍、文章、实战。如何残酷共学基于 GitHub 的流程,残酷共学发起人在 Github上创建...
LXDAO 是一个专注研发的 DAO 组织,致力于构建支持有价值的公共物品和开源项目的无限循环。 LXDAO is an R&D-focused DAO dedicated to building an Infinite Cycle that supports valuable

Subscribe to LXDAO

Subscribe to LXDAO
Share Dialog
Share Dialog


<100 subscribers
<100 subscribers

撰文 | BruceXu
编辑 & 排版 | Connie
设计 | Daisy
首先周末集市是在周末一个广场或者停车场开办的集市,商贩可以申请摊位然后支付一定租金过来摆摊,然后大家都可以来逛。有的出售食物、有的是鲜花或者手工制品,还有过来演奏音乐的。大概是下面这样:

集市这个地方就是所谓的公地,即这是一块公开的场地,大家都可以来玩,享受在这块公地这些活动和商品。
在这块公地上,卖商品的摊位之间存在竞争性和排他性,尤其体现在卖早餐的摊位之间。因为人的胃口是有限的,如果他吃了一个热狗,就不太可能再吃一笼蒸饺。这也就是竞争性。在有限的游客中,越多人吃我的,我赚的就越多。
具体的东西被别人买走了,就有了排他性。一个商品卖给了买家 A,就无法卖给买家 B。同样的,商家也有能力控制是否卖给某一类人,这就是所谓的排他性。我去的时候,时间有点晚了,所以好的无花果已经被挑走了。

在这一块公地上,还有一类摊位同时具备非排他性和非竞争性,也就是所谓的公共物品。没错,在周末集市这个场景就是演奏音乐的摊位。

非排他性体现在:
1)你不需要付钱也可以听到音乐。
2)音乐演奏者无法让现场指定的人听到音乐,而排除掉一些人。
非竞争性体现在:
1)你有没有吃早餐或者购买某个商品,都可以来听音乐。
2)现场有多个播放音乐的摊位,大家不会因为听了这个声音而拒绝收听另一家。
这个音乐摊位的主要盈利模式靠捐赠,也就是前面放一个吉他包,大家觉得好听的可以自愿捐钱。
但是这种模式存在比较大的不确定性和持续性。
假设捐赠的钱不够生计,那么人们可能无法继续选择做音乐,之后这块公地上就再也没有音乐。
这也是另一个纬度的公地悲剧,即有价值的公共物品缺少很好的支持导致整个生态受损。
在这里,我们有一个假设,就是这个音乐还是比较好听的而非噪音。音乐可以给在现场的人带来愉悦的情绪价值,可能吸引更多人去这一片区域,或者更容易做出消费的决策。
基于这个假设,音乐摊位附近的摊位可能拥有了更多客流量和营业额。但是这些摊位并不会捐赠给这个音乐摊位,这个就是所谓的搭便车,也就是说人们倾向于白嫖公共资源。
至此,公共物品、公地悲剧、搭便车、竞争性、排他性这些概念已经解释完了,再多说一点就是很难有绝对的公共物品。比如出了这个广场你就听不到这个音乐,从地理位置来看是具备排他性的,所以公共物品的判断通常是在一定的条件下、基于相对程度来判断的。
首先,大部分人都认可公共物品的价值,毕竟每个人都能因此受益而去不需要付出实际的成本,白嫖真香。这里延伸出了第一个问题:如何识别和衡量公共物品的价值?
对于商品来说,非常容易实现这一点。我花钱买了一个面包,吃饱了,这是实实在在的收益。
但是对于音乐,我听了心情愉悦,如何用金钱衡量呢?这是一个很大的公共物品的问题。比如一些公开访问的论文,很多人可能看不懂它因此它一文不值,也有可能某项研究基于它进行,进而研发出来了全新的科技,改变了人类。
那么如何给这篇论文定价呢?专利是一种保护知识产权的方式,可是也是一种限制,围绕专利的官司和法律消耗了人类社会很多的资源,也限制了一些科技的发展。
如果所有研究成果都是完全公开的公共物品,这个世界是否会发生一些不同?这就是 DeSci 去中心化科学方向研究的一个课题。
如果一个公共物品有明确的价值,事情就会好办一些,比如请一个乐队来现场可以让摊位管理费提升 1000 刀,那么摊位管理员将可以支付 600 的费用给到乐队来到这个周末广场。但实际上我们无法衡量,因此,我们下面的讨论前提建立在公共物品是有价值的前提上。
拿这个音乐摊位来说,作为一个公共物品,它如何实现可持续性呢?下面有几种方案:
捐赠。
演唱的好了,大家心情愉悦就会考虑捐赠。这也是公共物品最直接简单的方式,但是资金通常很少,因为大家喜欢白嫖,这就是典型的公地悲剧。
这一类在 Web3 的解决方法有 Gitcoin 、GiveETH 、JuiceBox 、Donate3(LXDAO)等。通过区块链技术优化捐赠流程和透明度。
了解 Donate3:https://lxdao.io/projects/006
场地运营方支付费用。
如果验证一个市场必须要有音乐,那么运营方通过对其他摊位收取摊位费和利润,来支持到比较难盈利但是有必要性的摊位。
这就是目前的税收机制,将税收分配到基础设施建设、学校和教育建设等公共物品。
全新的分配机制
如果可以量化公共物品的产出和价值,——能证明音乐摊位能够增加周围摊位的营业额,那么受益的摊位就应向音乐摊位支付一定的费用,以此实现收益的公平分配。
在 Web3,这种方法还在研究和探索阶段,但有望实现公平且有效的资源再分配。
商业化
比如设立付费点歌服务,销售相关商品,或在摊位上挂广告。
另一种方法是通过与有商业利润的摊位合作,共享一些运营成本。例如在下面水果摊位,摊主用音响播放音(下图红方框)达到吸引顾客的目的,同时提供了音乐这个公共物品。而音乐摊位只需要对合作的摊位需要支付电费。
这一点在 Web3 已经陆续发现一些新的基金成立,承诺将部分投资利润投入到对公共物品的支持。这一点在商业化的时候,可能会影响大家的体验,所以 Vitalik 创造了一个“邪恶-收入曲线”的概念(改日再聊)。
邪恶-收入曲线——https://vitalik.eth.limo/general/2022/10/28/revenue_evil.html

看起来似乎比较难解决,公共物品的可持续性跟我有关系吗?或者我们真的需要公共物品吗?
其实公共物品的问题不仅仅发生在周末集市或者一个地区和国家,**而是无处不在。**你或许不会去逛周末集市,但相信你一定天天上网。在互联网这一块公地,充满了无数的公共物品和非公共物品。你是否愿意接受一个下面这样的互联网:
登录任意网站查看信息或者下载资料需要先付费订阅。
使用几乎所有软件都需要支付一些费用,没有很多免费的软件可以用。
即使这个软件和网站是免费的,但里面充满了广告,每点一次都要弹出。
商业公司可以排他性的限制我能否使用他们的服务,即便是我愿意付费。没有免费开源软件的竟品,商业公司漫天定价。
你之所以可以享受到现有的有一定程度的免费、开放、共享的互联网,就是因为开源项目和数字公共物品的存在。
为什么这些开源贡献者和公共物品建设者值得赞赏呢?
**是因为他们不惧公地悲剧、愿意主动奉献、不求回报。**试想一下有多少人来到周末集市,愿意免费自愿帮忙打扫卫生维护公共环境的呢?
开源项目和数字公共物品面临了如此大的挑战,仍然协助打造了目前如此开放、免费的互联网,进而加速了全人类的发展和历史进程。
逆向思维,如果我们增加对公共物品的关注、宣传、支持,甚至亲自参与到这个公共物品的建设中,捐出一点钱或者参与开发维护一些开源项目,一旦解决了一些可持续性问题,让公共物品的可持续性不亚于私人物品和商业,这个世界会变成什么样?
作为 LXDAO 的联合创始人之一,这两年我致力于探索数字公共物品和开源项目的可持续性问题,并提供相关的公共服务。
Web3 技术和理念为我提供了解决这些问题的希望。例如,加密货币的无国界特性允许实现自动化的编程支付,从而使全球范围内的开源资助自动化成为可能;NFT 能够解决数字公共物品的确权问题。Web3 的开源本质也为数字公共物品赋予了新的声音(尤其是在以太坊生态中);DAO 的运作模式自然契合开源项目的协作性质,允许人们远程匿名提交代码,同时可以获得 DAO 的资助。
LXDAO 是一个专注于可持续地支持有价值的 Web3 公共物品和开源项目的研发 DAO。目前我们正在致力于探索和实施如何利用 DAO 和智能合约来解决 Web3 公共物品和开源项目的可持续性问题。目前我们已经取得了一些初步成果,但我们的方案仍在不断发展和完善中。我们的目标是使开源公共物品达到商业项目的质量水平,使公共物品的创造者不再依赖捐赠,也能享有稳定的生活质量。


撰文 | BruceXu
编辑 & 排版 | Connie
设计 | Daisy
首先周末集市是在周末一个广场或者停车场开办的集市,商贩可以申请摊位然后支付一定租金过来摆摊,然后大家都可以来逛。有的出售食物、有的是鲜花或者手工制品,还有过来演奏音乐的。大概是下面这样:

集市这个地方就是所谓的公地,即这是一块公开的场地,大家都可以来玩,享受在这块公地这些活动和商品。
在这块公地上,卖商品的摊位之间存在竞争性和排他性,尤其体现在卖早餐的摊位之间。因为人的胃口是有限的,如果他吃了一个热狗,就不太可能再吃一笼蒸饺。这也就是竞争性。在有限的游客中,越多人吃我的,我赚的就越多。
具体的东西被别人买走了,就有了排他性。一个商品卖给了买家 A,就无法卖给买家 B。同样的,商家也有能力控制是否卖给某一类人,这就是所谓的排他性。我去的时候,时间有点晚了,所以好的无花果已经被挑走了。

在这一块公地上,还有一类摊位同时具备非排他性和非竞争性,也就是所谓的公共物品。没错,在周末集市这个场景就是演奏音乐的摊位。

非排他性体现在:
1)你不需要付钱也可以听到音乐。
2)音乐演奏者无法让现场指定的人听到音乐,而排除掉一些人。
非竞争性体现在:
1)你有没有吃早餐或者购买某个商品,都可以来听音乐。
2)现场有多个播放音乐的摊位,大家不会因为听了这个声音而拒绝收听另一家。
这个音乐摊位的主要盈利模式靠捐赠,也就是前面放一个吉他包,大家觉得好听的可以自愿捐钱。
但是这种模式存在比较大的不确定性和持续性。
假设捐赠的钱不够生计,那么人们可能无法继续选择做音乐,之后这块公地上就再也没有音乐。
这也是另一个纬度的公地悲剧,即有价值的公共物品缺少很好的支持导致整个生态受损。
在这里,我们有一个假设,就是这个音乐还是比较好听的而非噪音。音乐可以给在现场的人带来愉悦的情绪价值,可能吸引更多人去这一片区域,或者更容易做出消费的决策。
基于这个假设,音乐摊位附近的摊位可能拥有了更多客流量和营业额。但是这些摊位并不会捐赠给这个音乐摊位,这个就是所谓的搭便车,也就是说人们倾向于白嫖公共资源。
至此,公共物品、公地悲剧、搭便车、竞争性、排他性这些概念已经解释完了,再多说一点就是很难有绝对的公共物品。比如出了这个广场你就听不到这个音乐,从地理位置来看是具备排他性的,所以公共物品的判断通常是在一定的条件下、基于相对程度来判断的。
首先,大部分人都认可公共物品的价值,毕竟每个人都能因此受益而去不需要付出实际的成本,白嫖真香。这里延伸出了第一个问题:如何识别和衡量公共物品的价值?
对于商品来说,非常容易实现这一点。我花钱买了一个面包,吃饱了,这是实实在在的收益。
但是对于音乐,我听了心情愉悦,如何用金钱衡量呢?这是一个很大的公共物品的问题。比如一些公开访问的论文,很多人可能看不懂它因此它一文不值,也有可能某项研究基于它进行,进而研发出来了全新的科技,改变了人类。
那么如何给这篇论文定价呢?专利是一种保护知识产权的方式,可是也是一种限制,围绕专利的官司和法律消耗了人类社会很多的资源,也限制了一些科技的发展。
如果所有研究成果都是完全公开的公共物品,这个世界是否会发生一些不同?这就是 DeSci 去中心化科学方向研究的一个课题。
如果一个公共物品有明确的价值,事情就会好办一些,比如请一个乐队来现场可以让摊位管理费提升 1000 刀,那么摊位管理员将可以支付 600 的费用给到乐队来到这个周末广场。但实际上我们无法衡量,因此,我们下面的讨论前提建立在公共物品是有价值的前提上。
拿这个音乐摊位来说,作为一个公共物品,它如何实现可持续性呢?下面有几种方案:
捐赠。
演唱的好了,大家心情愉悦就会考虑捐赠。这也是公共物品最直接简单的方式,但是资金通常很少,因为大家喜欢白嫖,这就是典型的公地悲剧。
这一类在 Web3 的解决方法有 Gitcoin 、GiveETH 、JuiceBox 、Donate3(LXDAO)等。通过区块链技术优化捐赠流程和透明度。
了解 Donate3:https://lxdao.io/projects/006
场地运营方支付费用。
如果验证一个市场必须要有音乐,那么运营方通过对其他摊位收取摊位费和利润,来支持到比较难盈利但是有必要性的摊位。
这就是目前的税收机制,将税收分配到基础设施建设、学校和教育建设等公共物品。
全新的分配机制
如果可以量化公共物品的产出和价值,——能证明音乐摊位能够增加周围摊位的营业额,那么受益的摊位就应向音乐摊位支付一定的费用,以此实现收益的公平分配。
在 Web3,这种方法还在研究和探索阶段,但有望实现公平且有效的资源再分配。
商业化
比如设立付费点歌服务,销售相关商品,或在摊位上挂广告。
另一种方法是通过与有商业利润的摊位合作,共享一些运营成本。例如在下面水果摊位,摊主用音响播放音(下图红方框)达到吸引顾客的目的,同时提供了音乐这个公共物品。而音乐摊位只需要对合作的摊位需要支付电费。
这一点在 Web3 已经陆续发现一些新的基金成立,承诺将部分投资利润投入到对公共物品的支持。这一点在商业化的时候,可能会影响大家的体验,所以 Vitalik 创造了一个“邪恶-收入曲线”的概念(改日再聊)。
邪恶-收入曲线——https://vitalik.eth.limo/general/2022/10/28/revenue_evil.html

看起来似乎比较难解决,公共物品的可持续性跟我有关系吗?或者我们真的需要公共物品吗?
其实公共物品的问题不仅仅发生在周末集市或者一个地区和国家,**而是无处不在。**你或许不会去逛周末集市,但相信你一定天天上网。在互联网这一块公地,充满了无数的公共物品和非公共物品。你是否愿意接受一个下面这样的互联网:
登录任意网站查看信息或者下载资料需要先付费订阅。
使用几乎所有软件都需要支付一些费用,没有很多免费的软件可以用。
即使这个软件和网站是免费的,但里面充满了广告,每点一次都要弹出。
商业公司可以排他性的限制我能否使用他们的服务,即便是我愿意付费。没有免费开源软件的竟品,商业公司漫天定价。
你之所以可以享受到现有的有一定程度的免费、开放、共享的互联网,就是因为开源项目和数字公共物品的存在。
为什么这些开源贡献者和公共物品建设者值得赞赏呢?
**是因为他们不惧公地悲剧、愿意主动奉献、不求回报。**试想一下有多少人来到周末集市,愿意免费自愿帮忙打扫卫生维护公共环境的呢?
开源项目和数字公共物品面临了如此大的挑战,仍然协助打造了目前如此开放、免费的互联网,进而加速了全人类的发展和历史进程。
逆向思维,如果我们增加对公共物品的关注、宣传、支持,甚至亲自参与到这个公共物品的建设中,捐出一点钱或者参与开发维护一些开源项目,一旦解决了一些可持续性问题,让公共物品的可持续性不亚于私人物品和商业,这个世界会变成什么样?
作为 LXDAO 的联合创始人之一,这两年我致力于探索数字公共物品和开源项目的可持续性问题,并提供相关的公共服务。
Web3 技术和理念为我提供了解决这些问题的希望。例如,加密货币的无国界特性允许实现自动化的编程支付,从而使全球范围内的开源资助自动化成为可能;NFT 能够解决数字公共物品的确权问题。Web3 的开源本质也为数字公共物品赋予了新的声音(尤其是在以太坊生态中);DAO 的运作模式自然契合开源项目的协作性质,允许人们远程匿名提交代码,同时可以获得 DAO 的资助。
LXDAO 是一个专注于可持续地支持有价值的 Web3 公共物品和开源项目的研发 DAO。目前我们正在致力于探索和实施如何利用 DAO 和智能合约来解决 Web3 公共物品和开源项目的可持续性问题。目前我们已经取得了一些初步成果,但我们的方案仍在不断发展和完善中。我们的目标是使开源公共物品达到商业项目的质量水平,使公共物品的创造者不再依赖捐赠,也能享有稳定的生活质量。

No activity yet