本文介绍了旨在改进 Lighthouse 客户端性能的项目计划,包括暴露 Validator 错过区块的指标、分析 BeaconProcessor 调度器性能、以及实现模拟 Staking 性能指标。该项目旨在通过暴露更多指标和创建模拟场景,帮助开发者更好地了解和优化 Lighthouse 客户端的性能。
以太坊协议奖学金为学习和为以太坊生态系统做贡献提供了宝贵的经验。 在过去的一年里,我冒险进入了区块链的世界,发现自己越来越被它的复杂性所吸引。
作为去中心化技术的热情倡导者,我有幸通过个人 和专业项目参与了各种区块链协议,其中以太坊是最成熟和引人注目的。 随着我花更多的时间来理解以太坊并在这一过程中解决许多技术挑战,这种感觉只会越来越强烈。
我越来越喜欢了解以太坊客户端如何在网络中运行和交互的机制。 再加上我越来越喜欢编写 Rust 代码,并作为核心开发人员为以太坊生态系统做出贡献, 这就是我的动力所在。我也相信核心开发人员面临着一些最复杂的技术挑战,我想成为其中的一员。
过去,我曾密切合作解决一些以太坊节点的性能问题和延迟问题。 在客户端多样性方面,很明显,Rust 由于其作为目前最有效和最具弹性的编程语言之一的声誉,有望得到更广泛的采用。
将我对解决性能问题、编写 Rust 代码和整个以太坊生态系统的兴趣结合起来,我很高兴能成为以太坊协议奖学金的一员,并为 Lighthouse 客户端做出贡献。
作为尝试提高 Lighthouse 指标和性能的一部分,我将研究以下几个主题,包括:
公开受监控的验证器池中错过的区块指标
调度器分析
模拟质押性能指标
第 1-3 周:实现错过区块的指标
第 2-4 周:在 BeaconProcessor 调度的任务中实现一些指标
第 5-10 周:实现一个简单版本的模拟器
第 11-12 周:测试/调试上述实现
当在 LH 中公开更多指标时,该项目将被考虑。
为一组验证器添加错过的区块是让我更熟悉 LH 架构的一个好的第一步,并且包含一个体面的第一步挑战,因为有几个技术要求需要考虑(例如,更多地了解代码库的组件,需要从不同的组件(缓存、状态等)查询更多信息,确保性能是可以接受的。
然后我将继续在 BeaconProcessor 调度的不同任务中添加更多指标,这将使开发人员可以更好地了解每个任务在运行时的不同处理时间。
然后创建一个工作流程,使开发人员能够模拟不同类型的场景,挑战其客户端的性能,并使他们能够更轻松地改进代码的某些部分。
https://github.com/sigp/lighthouse
https://github.com/sigp/lighthouse/issues/3414
https://github.com/sigp/lighthouse/tree/unstable/beacon_node/beacon_processor
- 原文链接: github.com/eth-protocol-...
- 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!