SOFAJRaft Contributor 专访|黄章衡:前进的力量源于实践
本期专访来自「开源之夏」暑期 2021 突出贡献奖获得者 --黄章衡。迷你简历姓名:黄章衡年龄:21学校:福州大学最喜欢的开源软件:K8s最喜欢的数码产品:MAC最喜欢的开源社区:SOF...
本期专访来自「开源之夏」暑期 2021 突出贡献奖获得者 -- 黄章衡。
迷你简历
姓名:黄章衡
年龄:21
学校:福州大学
最喜欢的开源软件:K8s
最喜欢的数码产品:MAC
最喜欢的开源社区:SOFAStack
自我介绍
我来自福州大学 19 级计算机系,平常喜欢研究分布式和数据库。兴趣是参与开源项目,做开源贡献,我活跃参与了多个开源项目,包括 SOFAJRaft、TIDB 等等。
暑期2021项目:
SOFAStack 社区——
实现 SOFAJRaft Segment Log 的索引模块
Q:据了解,你在本科期间获得了诸多奖项,有丰富的实践经验。这对你的专业能力有什么帮助,有什么经验可以和同学们分享?
参加一些竞赛可以帮助我提高自己的团队协作能力,同时让我在一些“大场景“下能够镇定自若。
我觉得参加竞赛最重要的是要找到合适的队友,团队里每个队员都要各司其职。此外,作为队长,应该统筹管理整个团队的项目进度。
Q:你目前了解的开源项目中,有让你受益匪浅的项目吗?它对你有什么启发?
SOFAJRaft 让我学习到了很多东西,其加深了我对 “Raft“共识算法的理解。同时,让我学习到了如何构建一个大型的分布式系统。现在有很多的分布式系统都是基于 Raft 算法来做的(比如 TIKV),这对于我学习别的分布式系统有很大的帮助。
Q:请简单介绍一下暑期2021中你的开源项目
该项目主要负责为 SOFAJRaft 基于 Java 构建一个新的日志存储系统 -- LogStorage, 以替换原有的基于 Rocksdb 的存储系统。
Q:在项目进行中遇到的印象最深刻的困难是什么?
如何解决的?有什么收获吗?
所谓“万事开头难“,一开始我就对如何设计这个日志系统的架构而发愁。我的解决方法是去做调研——包括寻找相关的论文,研究别的相关的分布式系统,看看是否能让我找到启发。
收获就是,这让我学习到了如何去解决问题,特别是当自己没有思绪的时候,应该学会去找资料来突破困境。此外,只要克服了一开始的困难,后面的路就好走了。
Q:之后会继续丰富这次活动的文档和代码吗?
对这个项目的内容有更高的期待和计划吗?
会的。
目前这个系统在性能方面还有提高的空间,后面我会配合社区负责人推动该项目的合并,并不断地改进项目的存储性能。
Q:导师对你的项目评价颇高甚至超出预期,
对于项目的申请及开发有什么经验可以分享?
首先,我觉得,在开源之夏这个活动中,一个好的导师是非常重要的。
我十分有幸遇到了我的导师——冯家纯, 其在暑期不断的帮我改进项目方案, 同时花了很多时间帮我 review 代码, 这促进了我能够较好的完成该项目。其实一开始的时候,我提交的申请方案并不是很完美,甚至可以说很差劲。但是老师给了我机会,他相信我可以做得更好。
此外,关于项目的申请,我觉得最重要的是尽早联系导师,并尽早提供项目方案。如果不知道如何设计方案,可以去借鉴一些相关的开源项目。
Q:请简单介绍做过的其他项目,
过程中遇到的最印象深刻的难题是什么?
你是怎么解决的?
这几个月,我尝试动手实践了 Tinykv (分布式 kv 存储) 和 Mit-6.830 (Database management system)这两门课程。学习过程中,凭借着我在 SOFAJRaft 社区打下的 “分布式基础“, 我目前已经完成这两门课程。
学习过程中最大的困难就是如何坚持做完。这两门课程的难度比较大,很多人做到一半就放弃了。不过 “开源之夏“的活动让我再次意识到 “坚持就是胜利“。
Q:对于提高代码质量、可读性和文章的完整性,
有什么可以分享的学习方法吗?
代码质量方面:
我的导师在结课点评中送给我一句话:
'What really makes xxx stand out is attention to low-level details.'
coding 的过程中一定重视代码的细节,要构建属于自己的代码风格,不能随意敲代码。 此外,代码风格也要遵循社区的代码风格。最后,在做到一定阶段的时候,应该让导师帮忙 code review。
文章的完整性:
首先需要对所做的项目有一个全面的认知,文章结构可以按照:
1.项目背景
2.技术背景知识
3.项目架构概述
4.优化点及测试性能
5.总结
Q:有加入开源社区吗?
通过本活动,你对开源社区有什么新的理解?
我加入了 SOFAJRaft 、TIDB、 RocketMQ 社区。一个字! 香!
参加开源社区, 做开源项目,对我的面试求职,个人能力的发展,人脉的扩充都非常有帮助。同时,借助开源社区,我也认识越来越多的前辈!
本周推荐阅读
攀登规模化的高峰 - 蚂蚁集团大规模 Sigma 集群 ApiServer 优化实践
「网商双十一」基于 ServiceMesh 技术的业务链路隔离技术及实践
更多推荐
所有评论(0)