区块链扩展问题似乎有很多非常聪明的人想通过它试图解决很多非常困难的问题。在我的生活中,我遇到了很多非常聪明的人,比我聪明得多,我明白了为了能够做一些有用的事情,我需要一点创造力。我没有像其他人一样去解决同样的问题,而是尝试解决一个更简单的问题,完成同样的工作。此外,我非常努力工作来弥补我的缺点。
多年来,我获得了很多实践经验,尽管我可能无法做出花哨的数学证明来证明某个问题在某种程度上是可以用数学方法解决的,但我发现让事情实际运行起来要实际得多。即使有一个漂亮的数学证明,您仍然需要正确地实现它。
无论如何,让我们考虑一下区块链缩放问题。主要问题是,我们希望区块链能够处理“真实世界”级别的数据量。没有人确切知道这是多少,但它显然超过每秒7个事务。这一点是显而易见的。我们如何提高吞吐量?
两个最明显的方法是增加块大小和减少块时间。对事务进行编码的更有效的方法会更有帮助。让我们假设我们没有陷入愚蠢的政治,使我们花4年的时间不翻倍的块大小!在当今的互联网时代,大约1分钟的阻塞时间和8MB的阻塞大小似乎已经到了极限。当然,高带宽节点可以做得更多,但是每分钟8MB的带宽已经完全饱和了128kbps的连接,可能是双向的。这意味着,如果我们不断增加块大小并减少块时间,我们就不能同时拥有更高的吞吐量和大量节点来保持同步。
假设每个事务256字节,8MB大约等于500 tx/秒。几乎增加了两个数量级!通过最大限度地提高每笔交易的支付,我们可能会将支付提高到每秒几千次。但实际上,要想超越这一目标,就需要一些重要的新技术,而这些新技术本身并没有太多的实地测试。
让我们退一步,用更常识性的术语来思考这个问题。假设我们有一条路穿过一个小镇。这条路每秒能开7辆车,但不是恒定的7辆。它实际上有一个10分钟循环的红绿灯。成千上万的汽车等着红灯变绿,只有在绿灯一亮就排好队的汽车才允许继续前进。这是利用BTC链特性的10分钟块。
现在,你可以想象如果我们试着让灯在一秒钟内从红到绿再到红,让所有的车协调起来是不现实的。让我们假设我们可以加速到每分钟一次,进一步我们可以增加道路的大小8x。我们现在正在挑战可能的极限,速度再快也不现实。
我们有各种切分建议,它们以N种方式复制现有的系统,并尝试将所有切分协调到主链。与road示例不同的是,在区块链中,需要加密精确,并且有一些非常棘手的问题,比如需要防止重复开销。为了处理这种非常复杂的机制,有人提出,在不失去安全性的情况下可靠地解决这种机制几乎是不可能的。
回到道路的例子,这有点像试图获得更高的能力,通过封闭的道路在一个管道,使它成为一个真空,没有空气阻力,装备每辆汽车的磁悬浮技术,使他们可以走10倍的速度。现在我们终于可以接近所需的10,000+ tx/秒的水平。等等,还记得带宽问题吗?任何一个正常的节点怎么能跟上这样的洪水呢?还有,所有这些真空磁悬浮魔术是如何运作的,你如何让汽车进出这个真空密封管?
在不改变问题的情况下解决问题,会导致不切实际的科幻小说,比如《解决方案》,它并不能真正解决节点如何跟上数据洪流的问题。这是否意味着这只是一个超前的问题?我们需要等待摩尔定律把处理、容量和带宽翻一倍又一倍?
这就是为什么我喜欢改变这个问题。我问自己,为什么不建造一些独立的道路,不需要彼此直接协调?让每一个都以自己的速度运行,并设置一些东西,以便在大多数时候,所有事务都在同一条特定用户的链上,但是有一种方法可以让事务与其他链一起完成。每个用户只连接到他们关心的区块链,只需要同步他们关心的数据链。没有一个节点必须同步所有的链,但是所有的链都是分散的,所有的链都使用当前几百tx/s的技术来运行。
道路的类比是,不是只有一条穿过城镇的道路,而是让100条普通道路的容量达到100倍。不需要天才就能意识到,100条路的容量是一条路的100倍。事实上,这就是城市所做的,如果他们需要更多的路,他们就修建它们。
从这个简单的解决方案到区块链伸缩问题,事实证明,通过巧妙地使用merkleroots,可以以加密方式协调交叉事务,而不必让链彼此同步。komodo deamon能够基于几十个-ac参数创建一个运行时fork,并且可以在不更改任何源代码的情况下创建非常大范围的区块链行为。
所有这些链都已经准备好与dPoW安全一起插入cross - schain体系结构,但这是另一个帖子的内容。
所有的事务都使用一个单一的链,这会产生一个单一的故障点,然后在合并之后对其进行切分,这就像整理煎蛋卷一样。manychain方法不需要对鸡蛋进行任何解读,因为所有独立的链已经完全分离。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)