使用“扫一扫”即可将网页分享至朋友圈。
为什么说模块化是必然的?以及它对我们的启示
逆向思考如何设计一条公链,你会发现模块化是多么的顺理成章
此前PANews在文章《Layer2之后该怎么扩容,深度解读Celestia的数据可用性模块》中简单介绍过什么是模块化,但这次希望在此基础上,谈谈为什么区块链需要被模块化。
首先来复习一下模块化是什么。在这个概念中,一条公链可以被分解成安全层,数据可用层和执行层。安全层通常是承载共识的,也就是负责让最终交易结果上链。数据可用层则可以被简单理解成帮助执行层“自证清白”,防止执行层作恶的。我们常挂在嘴边的Rollup,或者Layer2就是执行层,它是一个模块,同时也是区块链模块化的产物,负责执行交易。
这三项功能原本被放到一整条公链中,直到链上的节点越来越多,区块越来越大,交易越来越忙不过来,最后的结果就是,不但Gas费爆炸了,出块速度还很慢。于是就有我们常说的区块链“不可能三角”理论,即如果用加大区块大小来提高数据流通量,就得拉高节点的门槛,淘汰掉算力不达标的节点同时,也降低公链的去中心化程度。如果想要保住去中心化,只有增加更多更强大的节点,可节点一多,交易速度又慢了,只得继续增加区块大小,就又回到了最开始的问题。这个故事有很多种讲法,核心是只能靠牺牲一部分来成全另一部分,就像Solana,价格低,速度快,但是中心化程度高,它赌的是摩尔定律,赌算力和带宽的成本增长追不上链上交易给它带来的收入增长。
到这里,模块化的必然性就已经出现了,现在我们甚至不必再讨论扩容的方法将会有哪些,Layer2已经从一种可能性坍缩成了现实,将公链解耦的模块化就是答案。我们可以把上述三项功能中,其中至少一项单独外包出去的公链称为模块化公链,比如以太坊,它把执行层外包给了Layer2。也比如Polkadot和Near,它们有分片验证的外包设计。而Avalanche则像一个伪模块化公链,它看到了模块化的好处,于是做了一个单片链的组合,也让公链的基本功能在自家门内做了解耦,缺憾是目前还没有做好共享安全性。Cardano则处在一个临时状态,尽管没把已经解耦的功能外包出来,但从路径图上看也只是时间问题了。这些都是公链在模块化上所做的尝试,而模块化的最终愿景可能是Celestia与Evmos合作的那样——一个Rollup套娃,具体在开头所提文章中有展开阐述。所以,长远来看,模块化是公链扩容的必经之路,即便是“反对模块化”的Near其实反对的也只是“别人来做我的模块”,因为它要“我自己做我的模块”。
目前不仅执行层在模块化之后的成就有目共睹(Arbitrum和Optimism的体验明显好过Solana或是Fantom这类的Layer1公链,因为前者只需要一个算力足够强的节点来做Sequencer就够了,而后者哪怕是牺牲了去中心化来提升节点性能,也需要至少21个节点来做Sequencer),数据可用性也因此需要和执行层解耦。只有这样,当Layer2出问题时,用户才能借助数据可用性来提出“挑战”(针对OP)或是强行把自己的资产从Layer2上拉回Layer1(针对ZK)。这样的一个数据可用层,放在Layer2上(或是Layer2提供的链下第三方验证机构),你会不放心。放在Layer1上,你会心疼钱。分片并且放在一个单独的链上,随用随取,可能是目前最好的答案。这就是模块化开始快速发展的背景,长期趋势仍在酝酿,短期痛点已然出现。
模块化背后的——递归思维
考虑到这个话题对大多数人是无意义的,就像我们吃鸡蛋,却不必知道没心情下蛋的母鸡该怎么哄。所以我希望能和大家讲讲模块化背后的抽象思维,也许再听完后,你会发现这种思维其实无处不在,并且在理解后,能帮我们解决不那么抽象的问题,就像乐事薯片的“双曲抛物面”如此坚固,背后的道理却和蛋壳结构相同。
“模块化”的概念在web2.0已经被实践了很多年了,甚至可以说,从打有计算机开始,我们就在想办法把一类问题,做成一个模块。坦白讲计算机的本质是机械运动,就像算盘,我要去拨动算珠,算盘才能执行运算,我每拨动一下,算盘运算一次,所以这个时候真正在执行计算的是我,不是算盘。我今天遇到了一个算数问题,我拨了100次才把这个问题解决,但我没有把这个问题的答案记下来。如果第二天,我遇到了同样问题,我还是需要拨100下算盘。相信各位读者都有投资的经验,不难看出,我这两天一共拨了200次算盘,解决了两次问题,这是我用时间换来的基础收益。可如果我在第一次计算这个问题的时候把答案记下来了,那无论我遇到这个问题几次,我都只需要拨最开始那100次算珠。资源的复用,才能带来超额收益。在这个例子里,被复用的是“时间”。“把答案记下来”就是我得到的最基础的模块。在此之后,我还可以把更多计算公式也做成一个个模块,这样当计算机收到我的提问后,会找到对应的模块执行,最终把执行的结果反馈给我。此时在执行计算的是计算机,不是我。这个过程,就叫递归,所有的Rollup本质也是一种递归,它们通过不断的调用自身,来满足数据可用层的验证要求,这种资源的复用,是我们在大多数时候觉得计算机比人类效率更高的主要原因。
人类对这个世界的认识是由近及远、从少到多,一点点扩展来的,这就是人类固有的认识和思维方式,根植于我们的基因中。这样的认识和思维方式让我们很容易理解具体的事务,但是限制了我们的想象力和大局观。当需要思维触达那些远离我们生活经验的地方时,我们就会出现理解障碍。
和人不同,计算机在一开始就被设计用来处理规模大得多的问题,因此计算机有条件采用与常人完全不同的方式来解决问题。如果一个人能够站在计算机的角度想问题,就可以被算作拥有“计算思维”,这就如同我们说某个人具有科学思维或者工程思维一样。如果一个人在做事情的时候,采用的是计算机解决问题的方法,这个人就具有计算机的方法论。在计算机的思维中,最重要的是一种自顶向下,先全局后局部的逆向思维,它被称为递归(Recursive)。与之相对的,是人类采用的自底向上,从小到大的正向思维,它被称为递推(Iterative)。
在扩容的问题上,假如我们用现在的常规思维去想,交易变多了,那我需要给矿工更多的费用,而且我收到的交易费一定要高于我给矿工的费用,否则就会亏损,但我现在没这么多钱,所以我只能提高交易费,可这样一来交易量会缩小,于是我只好增加吞吐量,同时让节点数量减少,在安全性上做妥协。这种情况下,如果不减少节点数量,又不提高交易费,就只好发行更多的代币,用来支付矿工,这样做的结果就是这条公链的通胀越来越严重。比如Solana,至今为止,它一共执行了562亿次交易,按照其官网公布的,每笔交易手续费为0.00025美金,其收取的手续费总额为1400万美金左右。如果我们去Stakingrewards上看一下,可以查到它目前的Staked Value在455亿美金左右,按照较低一档的APY 5.88%计算,Solana最近三十天内要分给质押者约2.2亿美金。也就是说自其主网上线至今收到的所有交易费,仅相当于最近一个月支出的6.2%。以至于Solana需要15.4万TPS的吞吐量才有可能做到收支平衡,尽管我们知道它赌的就是摩尔定律能把带宽和算力成本拉下来,但这种规模的亏损,怕是禁不起一场熊市。这就是递推的思维,我遇山开山,遇水架桥,直到走进一个“死胡同”里。
以太坊没有采用这种通胀模型,其结果就是交易费用爆炸,但它在一天里收取的交易费用,甚至比Solana和Polygon一年的交易收入加起来都多。如果我们逆向去想这件事,矿工收取用户手续费,仅仅是因为矿工执行了交易么?交易人人都能执行,之所让矿工帮忙上链,无非是因为用户希望自己的交易能得到去中心化的安全保障。那让一条链把安全和交易全做了,岂不是自找不痛快?Solana收取交易的费用,付给矿工的是安全的钱,那它肯定亏本啊;用户交给Eth交易的任务,Eth收的却是安全的钱,那用户显然也不痛快。所以为什么要把安全和交易混为一谈呢?假如把数据可用性和分片从公链上分担出来,那节点越多,数据吞吐量就越大,而且节点门槛可以做到和手机一样,凭着这种可以无限增大的性能和与Layer1上矿工收入完全无关成本,我可以让这条链上的Rollup少说增加一个数量级。众多的Rollup,收取的也仅仅是交易的费用,提供的也是交易的服务。Rollup的数量上来了,能交给Layer1和数据可用层的费用就也增加了,前者的矿工这下任务轻了,把数据压缩上链就行了,后者也有钱买更多节点了,于是这下又增加了Rollup的空间。重复执行这项“递归”,公链将得益于全局思考的模块设计,走上一个正循环。
模块化的深化,Web3加强组合性
我甚至认为模块化在占领区块链底层后依然不会停下脚步。Web3.0才刚刚开始形成概念,我们就已经看到有个GameFi项目Metasport,用ETH做资产层,Starkware做P2E激励层,用Internet Computer做游戏玩法和逻辑层,IPFS做存储冗余层。模块化不应该被如此简单地定义在底层技术上。虚拟世界与现实之间的主要不同,在于虚拟世界更加稳定,不会因为一场突如其来的疫情,就让各国之间的供应链断裂,生产者被迫囤积大量库存,或干脆自己做自己的供应商。虚拟世界最大的风险不过是熊牛转换,在现实世界面前不值一提,所以我们也希望看到越来越多的应用开发者,在自己保留部分基础能力的同时,将实际任务外包给其它生态成员。毕竟虚拟世界的干扰因素少,所以我们有能力实现理论上的效率最大化。唯一需要考虑的就是安全问题,这个问题的难度等价于现在的跨链问题,但说到底也没什么大不了的,既然是技术问题,就总有解决的时候。
我想说的效率,其实还有另外一层。就是在区块链世界逐渐被大众所熟悉的今天,会有更多的优秀人才和资本被吸引进来。在web3.0概念中,供应商们很难像web2.0那样把用户留存在自己的生态里。如果是这样,这些“增量”会选择以一种什么样的方式进入到区块链世界中?我能想到的方式有两种,一是做卖铲子的人,他们将是模块的供应方,在现有的基础设施中找到可以被改进的点,唯有这样才能不依赖“流量”,同时利用模块化打造出自己的长板,与所在生态拼接成一个“木桶”。还有一种方式是将自己在链下的流量导流到链上,流量的入口仍然在链下,他们将作为模块化的需求方,需要的是开箱即用的体验,以及快速的应用搭建速度。
而模块化的区块链世界无疑能进一步拉低创新的门槛,我们甚至可以期待一个效率远超web2.0的区块链世界。只有当低水平的重复工作被模块化工具所终结,真正的创新才能开始,对区块链来说是这样,对我们每个人来说也一样。远的不提,大家有没有发现几乎所有DEX的前端页面全都长得像一个样子,几乎每个Solidity初学者做的第一个完整项目都是把Uniswap的代码复制一遍。对于开发者而言,这些常被拿来“学习”的内容,本身就是一个个封装好的“模块”,很多人就是在“学习”的过程中,站在前人的肩膀上,发现他们之前没有解决好的漏洞,做出一点点改进,然后成为其他人可以站上的肩膀。
现在开始,世界各地,从瑞士到马耳他到塞舌尔到新加坡到旧金山,会有更多一无所有的年轻开发者每天晚上扪心自问:
和尚摸得,为什么我摸不得?别人可以简简单单的在前人的代码上改进出新的项目,为什么我不可以?既然模块化已经提供了足够的基础组件,我为什么要花时间自己再重新写一遍?当更多开发者发出这样的问题后,区块链上的创新将会指数增长。
总结
模块化是扩容的答案:现有的公链要么已经开始模块化的尝试,要么仍处在币价涨幅难以支付矿工费用的亏损中。安全保护和计算执行是两种服务,理应分开收费。而这些仍在挣扎的公链,越早一天接入Layer2,其原始价值能被保留的越多,否则只能在无尽的通胀中被稀释殆尽。当然,将自己直接转化为某条公链的Layer2也是个可取的思路,我们不需要太多的公链用独立的安全层承载属于自己的共识,过度分散的共识对效率没有帮助,而自由的市场,终究会毁灭“更高效率”面前的所有阻碍。
商业竞争促成模块化:只有资源的复用能带来超额收益,诚然公链可以开发自己的模块化来解决自己的扩容问题,但在同等劳动付出下,完全独立的模块化项目会服务更多的用户,商业法则会淘汰那些得不到超额收益的竞争者。而模块化无论对需求方还是供给方而言,都是效率最高的方式。
安全问题很严峻,但不要被吓倒:web2.0解决安全性的方式能给我们带来一定启示,组件化在一开始带来的问题,比它解决的问题还要多。很多人一看到某些项目因为采用了多个供应商提供的模块组件,结果被黑客找到机会,给用户带来了损失,就认为这个方向本身不对。实际上这可能仅仅是因为时间太短,我们还看不出效果。在区块链世界中,模块化的概念仍在早期,实践的步伐要慢,但既然已经迈出了第一步,在想要改变这个方向之前,要更慢。同理对于那些坚持单片设计的公链,大家也要多一些耐心。
任何方向的改变在一开始都会有很大的下行的不确定性。比如我们常常讲免税可以刺激经济发展,从长远来讲能够获得更高的税收,但是幅度太大的免税会使得政府一下子入不敷出,然后不得不推高债务,成为经济发展的负担。牢记万事皆有滞后性,夏至来临的时候,往往还不到一年中最热的时候,把一克冰融化成水的能量,却能把这一克水从1度加热到80度。Web2.0的组件化花了很多年才初见成效。安全问题虽然是web3.0模块化的桎梏,但我相信它终有一天会被打破。
“广东财经网”的新闻页面文章、图片、音频、视频等稿件均为自媒体人、第三方机构发布或转载。如稿件涉及版权等问题,请与
我们联系删除或处理,客服邮箱1098101642@qq.com,稿件内容仅为传递更多信息之目的,不代表本网观点,亦不代表本网站赞同
其观点或证实其内容的真实性。
- 声音提醒
- 60秒后自动更新
【民政部回应何时恢复婚姻登记】民政部社会事务司二级巡视员杨宗涛表示,婚姻登记场所是人群聚集场所,部分地区暂停婚姻登记工作是对人民群众安全负责。未停止登记的地方推广用电话、网络、qq群预约登记,控制登记人数,分批分段登记,减少人员聚集和在登记机关停留时间。已停止婚姻登记地方将根据当地疫情控制情况逐渐恢复。
15:54欧洲央行副行长金多斯:欧洲央行还没有达到逆转利率。宽松政策的副作用更明显了。
15:54财经网站Forexlive分析师Justin Low评瑞士1月CPI月率:尽管通胀年率保持稳定,但核心通胀率有所下降,这一点令人更加担忧。这只是进一步巩固了瑞士央行维持现有货币政策不变,并可能在未来寻求更多宽松措施的观点。
15:54【武汉两大批发市场商户开业率超过80%】商务部市场建设司司长朱小良10日称,目前武汉生活必需品供应基本正常,除冷鲜肉、鲜叶菜等少数品种存在结构性短缺外,大部分重要生活物资供应充足,未发生明显抢购或脱销断档情况。当地白沙洲和四季美两大批发市场正常营业,商户开业率超过80%,日交易量上升至3000吨以上。(国是直通车)
15:53【日本2019年经常项目顺差增长4.4%】日本财务省10日发布的国际收支初步统计报告显示,主要受外国人入境游消费扩大影响,2019年日本经常项目顺差增长4.4%。报告显示,2019年日本经常项目顺差为20.06万亿日元(1美元约合109.8日元)。其中,商品贸易方面,由于液化天然气价格下跌等因素,进口下降5.6%至75.56万亿日元;由于汽车部件及钢铁等产品出口减少,出口下降6.3%至76.12万亿日元。货物贸易顺差减少53.8%,为5536亿日元。(新华社)
15:53欧元兑美元EUR/USD短线波动不大,现报1.0952。
15:53瑞士1月CPI年率:0.2%,前值:0.2%,预期:0.1%;瑞士1月CPI月率:-0.2%,前值:0%,预期:-0.2%。
15:52英镑兑美元GBP/USD短线走低13点,现报1.2890。
15:52【宁德时代“供电”国产特斯拉 有望拉低售价20%】全国乘联会秘书长崔东树分析认为,“随着特斯拉国产化率提升和产能爬坡,未来特斯拉国产车型的价格下探空间还是很大的。”他预计今年下半年,国产Model 3车型的售价就有望降至25万元,降幅接近20%。(新京报)
15:51【内蒙古:对不裁员或少裁员企业返还上年度50%失业保险费】据内蒙古新型冠状病毒肺炎疫情防控工作指挥部消息,疫情期间,内蒙古对不裁员或少裁员的企业返还上年度实际缴纳失业保险费的50%,对面临暂时性经营困难的中小企业,返还标准提高到上年度6个月企业及其职工缴纳社会保险费的50%。
15:51【商务部:2019年服务进出口总额54152.9亿元 同比增长2.8%】商务部新闻发言人表示,2019年,在服务贸易创新发展试点等政策的激励下,我国服务贸易总体保持平稳向上态势,逆差明显下降,结构显著优化,高质量发展成效初步显现。全年服务进出口总额54152.9亿元(人民币,下同),同比增长2.8%。其中,出口总额19564.0亿元,同比增长8.9%;进口总额34588.9亿元,同比减少0.4%。(第一财经)
15:51【振华股份:疫情导致下游客户开工推迟 产品库存上升】振华化学公告,公司目前生产经营稳定,所有产能均正常开工,原材料采购能基本满足生产需要,由于疫情导致下游客户开工推迟,公司出货量减少,产品库存有所上升。公司将根据客户需求、疫情及市场变化,适度调整生产经营策略,尽可能保持生产经营的稳定。
15:50环旭电子2月10日晚间公告,公司2020年1月合并营业收入为23.27亿元,较去年同期的合并营业收入减少27.83%,较2019年12月合并营业收入环比减少37.23%。
15:49精测电子:与京东方集团签订了多份销售合同,合同累计金额达到6.96亿元。
17:12华夏银行:银保监会同意本公司在全国银行间债券市场发行不超过100亿元人民币的金融债券,募集资金全部用于绿色信贷。
17:03