Dapper Labs在加密世界中有着令人骄傲的成绩:开发了CryptoKitties这一OG爆款应用后,转而开发公链Flow,又在公链上推出了出圈产品NBA Top Shot,占尽风头。当前,Flow也仍在积极拓展生态资源,近日刚刚宣布Meta前高管将入职。本文将从产品技术和运营生态等角度来分析Flow,理解其当下发展。 产品技术 Flow的技术中有两个最大的特色,一是「多节点架构」,二是「面向资源编程」,而这两点恰恰对应着当下的两个热点潮流:模块化区块链和Move系新公链。 Flow的第一个特点「多节点架构」指的是,将整条链从计算执行到完成共识的过程区分成不同的过程,用四类不同的节点完成相应的工作。相对于ETH Sharding的平行分工,这是一种垂直分工[1]。当下火热的模块化区块链,也是类似思路,Flow可以看作是模块化的一个早期案例。 四类节点分别包括:计算节点、共识节点、验证节点和收集节点。其中,计算节点运行要求高,必须部署在数据中心,实行准入制,目前总共7个计算节点;此外的其他节点云心要求较低,合计400+个节点。 来源:https://flowscan.org/staking/nodes Flow试图通过这样的方式来实现扩容。不过,目前的TPS还算不上很优秀,根据官网,简单转账的情况下可以达到100+TPS,但实际使用场景大多比转账复杂,估计没法做到[2]。垂直分工也让一部分节点的门槛降低,能让更多用户参与共识环节,但是计算节点的运行仍然是中心化的,「不可能三角」的问题仍然存在。 第二个特点「面向资源编程」(Resource-oriented Programming)是其自研编程语言Cadence的特征。「面向资源」也是Aptos/Sui/Linera这三条Libra系公链的通用语言Move的特征,Flow团队早期正是受到Move启发,完成了Cadence语言的开发。 面向资源编程作为一种新的语言趋势,目的是为了更好地适配链上资产的应用场景。Solidity是一种「账本模型」,一个资产对应一个所有者,资产都记录在合约中;而以Cadence为代表的面向资源编程则是「资源模型」,资产全部记录在所有者的地址中,只有所有者可以调用方法挪动资产。 以下面两张图为例,场景都是CryptoKitties转账,但是左图代表的账本模型是更改资产对应的owner字段,右图代表的资源模型则是将owner地址中的资产移出,再转移到新的owner地址下。 来源:https://medium.com/dapperlabs/resource-oriented-programming-bee4d69c8f8e 目前的Cadence仍然较为独立。虽然借鉴了Move的思路,但是对于语法有较大改动,代码迁移的工作量仍然不小,短期内较难与Move系生态共享开发者。不过,Flow已有规划,将上线Move VM,届时或许能够共享Move系生态红利。 (责任编辑:admin) |