Filecoin更好的支持交易所等大型机构服务矿工 网络已升级V12版本

[复制链接]
9697 |0
发表于 2021-5-10 17:36:11 | 显示全部楼层 |阅读模式

wk588_com_xxk5lsvicbo.jpg

wk588_com_xxk5lsvicbo.jpg

01  升级概要 

2021年4月29日,FIL网络升级到版本12。此升级引入了specs-actors实现的版本4,specs-actors实现是指定FIL协议规则的一组内置actor。新版本的specs-actor被设计为具有更高的性能,从而加快了块验证时间。FIL的lotus、venus和forest核心开发者共同发布了此次升级,诸多跨时区的节点运营商展示了他们的响应升级时间,迅速将这些性能改进到整个网络。

wk588_com_qxxh0qy01mg.jpg

wk588_com_qxxh0qy01mg.jpg

02 升级可使交易所等大型机构更好的服务矿工

对于所有区块链项目而言,重要的是要确保验证区块所需的时间少于生成区块的频率。在FIL网络上,每30秒生成一次块,因此至关重要的是,块验证所用的时间必须少于30秒。当然,块验证取决于多种因素:节点的硬件规格,链数据库的大小,节点上正在运行的其他进程等等。

在v12升级之前,中位质量节点运行平稳,块验证时间不到30秒。但是,速度较慢的节点以及保留了完整链历史的节点(因此具有非常大的数据库)的验证时间也更长,从而使它们有在速度下降的情况下不同步的风险。尽管大多数使用快速硬件和较小链数据库的矿工都没有受到影响,但是生态系统的其他重要成员,包括交易所和档案节点,开始遇到一些速度变慢和偶发的同步问题-对整个网络的健康产生负面影响。

同步时间缓慢的原因之一是参与者代码在处理新创建的矿工时效率低下。在过去的几个月中,网络经历了一些垃圾信息浪潮从而产生了过多的空矿工条目。这为显着提高性能提供了轻松的机会,因为减少处理空矿机所花费的时间可以大大提高块验证时间。在v12网络升级中推出此改进措施还可以主动防止将来的CreateMiner垃圾信息成为针对速度较慢节点的攻击媒介。

03 升级带来的性能提升

要了解V12版中引入的性能改进,我们需要了解系统的一些细节。FIL cron actor,位于地址f03处,是网络在每个时期运行的系统actor。运行状态转换可以保持Filecoin网络平稳,正确地运行。Cron actor每30分钟处理一次矿工actor,以验证矿工对要检查的部分扇区是否有正确的存储证明。通过cron actor的处理,FIL协议可以确保网络作为一个整体,每24小时检查一次FIL上的整个存储,并自动检测并惩罚任何丢失或损坏的数据。

在V12版本之前,cron actor将对每个单个矿工actor进行此处理。FILV12版本更改了cron actor,使其仅对需要它的矿工actor执行此处理。如果矿工正在积极证明存储,则“需要” cron工作。具体而言,这些条件中的任何一个都需要每30分钟进行一次cron工作:1)具有活动的PreCommit,2)具有活动的扇区,3)具有归属表中锁定的归属奖励。不满足任何这些条件的矿工演员在cron工作期间不需要做任何必不可少的工作,因此可以放心地跳过。特别是,新创建的矿工将不会立即请求cron作业,只有在它第一次开始向网络承诺存储时才会获得一份。

这项优化措施生效后,FIL网络已从每30分钟处理约375,000个矿工到现在的2,000多个。这导致平均块同步时间大约快一倍,并且每日状态快照的大小减少了20GB以上,几乎提高了2倍!节点运营商已经看到平均和最大块同步时间显着减少,并且几乎完全消除了大型归档节点实例不同步的情况。

v12升级后减少了同步时间:

wk588_com_f34bhmezqjm.jpg

wk588_com_f34bhmezqjm.jpg

v12升级后减少了不同步的实例(以时期为单位):

wk588_com_fvermhvkyum.jpg

wk588_com_fvermhvkyum.jpg

04 精准快速的执行升级

v12升级(引入了v4 actor)已在Lotus v1.8.0和venus v0.9.5中发布。Lotus团队在较短的时间内发布了该版本,从发布到网络升级时期只有大约48小时,这是所有节点运营商必须升级的截止日期。FIL社区能够执行快速升级非常重要,因为关键的安全问题可能需要在很短的时间内解决。为了为此类活动做准备,该网络在2020年9月的航天竞赛比赛中(主网升空前不久)经历了各种“战争游戏”场景。

社区在48小时的时间内毫不费力地升级到了v12,继续证明了其在将来需要时可以采用快速升级的能力。诸如此类的快速周转依赖于实施FIL协议的团队与各种节点运营商(包括存储矿工,存储客户端和交易所)之间有效的通信渠道。为了让每个人都能参与其中,FIL社区工程师在社区论坛中宣布了升级详细信息,包括升级要点,升级纪元以及指向实施发布时间表的链接,并更新了FIL网络状态页面带有可订阅的通知。然后,开发团队提供了响应式支持,以确保每个人都能通过多个支持渠道(包括论坛,Slack渠道等)及时平滑地升级其节点。

在较短的时间内正确实施此类更改也需要严格的测试和发布过程。Lotus团队能够使用过去几个月开发的新发行清单来做到这一点。另外,为了响应社区的反馈,Lotus团队谨慎地确保在这种强制性发行版中未引入未经测试的可选功能。相反,网络升级更改是在Lotus v1.6.0(Lotus最新稳定和经过测试的版本)之上提供的。对于需要最新功能的更多冒险用户,提供了候选版本Lotus v1.9.0-rc1,该版本合并了网络升级更改以及较新的功能。

05 感感社区和矿工们的支持进行快速升级以提供诸如此类的重大性能改进并非易事!得益于过去几个月来收到的反馈和改进,核心开发人员能够实施,测试和发布可改善FIL网络的高质量代码。此外,FIL社区中各种节点运营商的持续参与,专用支持和快速响应能力确保了网络可以根据需要快速升级。谢谢!

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

热门版块
快速回复 返回顶部 返回列表