
如果不提到著名的“可扩展性三难困境”,我们就无法谈论可扩展性。用于解释区块链旨在拥有的三个属性:(刘森-180-2857-8624)可扩展性、去中心化和安全性。很明显,到目前为止,我们可以实现其中两个属性。但是要同时获得这三个是非常非常困难的。
在我们理解为什么之前,让我们把我们的条款弄清楚。
1.可扩展性只是意味着区块链可以处理大量事务,以每秒事务数(TPS)衡量。
2.去中心化意味着区块链由世界各地的许多“去信任”节点运行——而不是由一小群集中的“受信任”节点运行。
3.安全性意味着即使网络中一定百分比的节点是恶意的,区块链也能抵抗攻击。理想情况下,它应该能够处理多达50%的恶意节点。
(1)请求(request):客户端向主节点发送请求调用服务。
(2)预准备(pre-prepare):主节点0收到客户端的请求后将其组播给其他副本,即0->123。
(3)准备(prepare):复制节点1、2、3收到请求后记录,并再次组播给其他复制节点,即1-
>023.2->013复制节点3因为宕机失效无法进行细播
(4)确认(commit):0、1、2、3节点在prepare阶段,若收到超过一个数量的相同请求,则进入commit阶段,组播commit请求,即0->123、1->023、2->013。
(5)回复(reply):0、1、2、3节点在commit阶段,若收到超过一定数量的相同请求,则对
客户端进行反馈。客户端需要等待f+1个不同复制节点发回相同的结果,作为整个 *** 作的最终节点。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)