有没有人比较过Kafka和RAFT Orderer之间的性能(延迟,吞吐量,TPS)?
我在这里可以看到在延迟、吞吐量和TPS方面有相当大的差异。
我尝试在两个不同的VM上使用相同的设置和相同的资源配置(唯一的区别是排序器系统)。
注意:在两个networks.Fabric版本中使用的单一排序器: 1.4.4
使用Kafka的订购者比使用RAFT的效率更高。我正在使用RAFT和Kafka的默认配置。
我尝试了一个100TPS的负载生成器。WIth Kafka所有参数都很好(延迟- 0.3到2秒),而使用RAFT,延迟逐渐增加2到15+秒,tx失败率也很高。
TPS、吞吐量和延迟出现如此显著差异的原因可能是什么?
如果我做错了什么,请纠正。
发布于 2020-01-17 06:00:12
对于初学者,我不会使用单一的排序器来运行性能测试。这些容错系统是用来处理分布式系统的分布和共识的,因此,通过运行单个排序器,可以从根本上消除它们存在的原因。这就好像你在土路上比较两辆跑车,想知道哪一辆是最快的。
然后还有其他因素在起作用,例如,如果您通过TLS连接服务,一般网络延迟以及您正在运行的代理/节点数量。
Chris Ferris在Raft发布之前对这两个系统进行了初步的性能分析,它似乎都更快,并且每秒可以处理几乎两倍的事务。你可以在这里阅读他的博客文章:Does Hyperledger Fabric perform at scale?
您还应该意识到,如果您在高负载下运行分布式系统,可能会出现双重开销问题和键冲突。您应该采取必要的步骤来避免这种情况,这可能会导致瓶颈。请参阅有关冲突的this Medium帖子,以及有关设置high throughput network的Hyperledger Fabric自己的文档。
https://stackoverflow.com/questions/59516945
复制相似问题