时间:2023-08-08|浏览:189
用戶喜愛的交易所
已有账号登陆后会弹出下载
公有链的分布式架构与此完全不同,它是去中心化的,每个节点独立运行。没有一个控制面板来监控所有节点的状态,也没有共享的中心化数据库。每个节点配置了独立的数据库,这样就会导致多个账本同时存在。为了解决节点间的同步问题,我们引入投票机制来确定最终的账本。比特币通过算力投票来选出最长的区块链引发拜占庭将军问题,但比特币的算法解决了这个问题。由于比特币是单链结构,在单位时间内只能产生一个区块,可以保证区块的唯一性。因此比特币本质上是单线程的数据库读写操作。
以太坊最初也没有问题,因为它与比特币一样是单链结构,采用POW共识。但在升级到2.0后,问题就变得很大。以太坊2.0引入了分片机制,类似于淘宝网的负载均衡器。它将节点网络分为不同的区域,每个区域作为一个分片,批量处理不同的请求。然而,实际上这种机制并不可行。以太坊2.0首先引入了一个称为Beacon的主链,负责记录所有交易的状态,相当于账本的核心。然后将整个节点网络划分为不同的分片,每个分片处理不同的交易请求,并将其分别记录在主链上。这种架构就变成了一个多线程的数据库读写操作。与比特币的单线程结构本质不同。
当多个线程对同一个数据库进行操作时,容易出现数据不同步的问题。正确的做法是在每个线程执行过程中,给数据库加上保护锁,避免其他线程同时访问。然而,在以太坊2.0中,保护锁加在每个节点自己的Beacon链上。这个锁的状态没有与其他节点同步,因此其他分片节点仍然可以访问主链。这就导致不同分片之间的竞争状态。解决这个问题需要投票决定,但以太坊2.0采用的是POS共识,已不再是POW。选择最长链的共识变得无意义,票数统计变得更加复杂。即使共识算法可以正确统计票数并认定节点1胜出,分片2的区块也会被舍弃。这就使得分片的意义失去了。如果想保留分片2的区块,就必须将该线程放入等待队列中。但是没有一个全局调配不同线程资源的控制面板,也无法了解每个线程的状态。这是否意味着回到了中心化的方式?
根据以上分析,可以断定一旦以太坊2.0上线,将会出现大量的数据不同步问题。不仅分片之间不同步,各节点的Beacon链也会不同步。这在公链中是一个严重的问题,因为数据不同步会导致矿工阵营的分裂和分叉。
一些公链试图克服这个问题,例如UENC公链采用了自主研发的DPOW共识算法,每个区块打包一笔交易,并采用随机验证的方式,实现了高效、安全和去中心化的可能性。
UENC主网已于2020年11月1日晚间正式上线。主网的上线标志着UENC近三年的技术开发取得了阶段性成果,UENC正式进入基础公链领域。UENC主网将提供高速度、低成本的链上交易体验,解决目前主流去中心化公链面临的拥堵和高交易费问题。同时,UENC基于独创的去中心化DPOW共识算法,开创了无算力竞争的先河。
此外,UENC社区已启动生态共建者招募计划,旨在招募行业优秀的KOL、媒体、资本和社区等,共同参与UENC生态建设。共建基金高达500万枚UENC,将由所有共建者共同分享。人们对这个备受期待的黑马公链充满期待!