概述
过早优化,往往引来各种麻烦。
一项技术究竟能否实用,有两项基本指标十分关键:一是功能的完备;一是性能的达标。
本章将试图对已有区块链技术进行一些评测。所有结果将尽可能保证客观准确,但不保证评测方法是否科学、评测结果是否具备足够参考性。
简介
区块链的平台性能跟很多因素都有关系,特别在实际应用中,根据应用场景的不同和系统设计和使用的不同,可能同一套平台最终在业务体现上会有较大差异。
在这里,仅侧重评测一般意义上的平台性能。
所有给出指标和结果仅供参考,由于评测环境和方案不同,不保证结果的一致性。
生产环境中应用区块链技术请务必进行充分验证评测。
Hyperledger Fabric v0.6 性能评测
环境配置
类型 | 操作系统 | 内核版本 | CPU(GHz) | 内存(GB) |
---|---|---|---|---|
物理机 | Ubuntu 14.04.1 | 3.16.0-71-generic | 4x2.0 | 8 |
每个集群启动后等待 10s 以上,待状态稳定。
仅测试单客户端、单服务端的连接性能情况。
评测指标
一般评测系统性能指标包括吞吐量(throughput)和延迟(latency)。对于区块链平台系统来说,实际交易延迟包括客户端到系统延迟(往往经过互联网),再加上系统处理反馈延迟(跟不同 consensus 算法关系很大,跟集群之间互联系统关系也很大)。
本次测试仅给出大家最为关注的交易吞吐量(tps)。
结果
query 交易
noops
clients | VP Nodes | iteration | tps |
---|---|---|---|
1 | 1 | 2000 | 195.50 |
1 | 4 | 2000 | 187.09 |
pbft:classic
clients | VP Nodes | iteration | tps |
---|---|---|---|
1 | 4 | 2000 | 193.05 |
pbft:batch
clients | VP Nodes | batch size | iteration | tps |
---|---|---|---|---|
1 | 4 | 2 | 2000 | 193.99 |
1 | 4 | 4 | 2000 | 192.49 |
1 | 4 | 8 | 2000 | 192.68 |
pbft:sieve
clients | VP Nodes | iteration | tps |
---|---|---|---|
1 | 4 | 2000 | 192.86 |
invoke 交易
noops
clients | VP Nodes | iteration | tps |
---|---|---|---|
1 | 1 | 2000 | 298.51 |
1 | 4 | 2000 | 205.76 |
pbft:classic
clients | VP Nodes | iteration | tps |
---|---|---|---|
1 | 4 | 2000 | 141.34 |
pbft:batch
clients | VP Nodes | batch size | iteration | tps |
---|---|---|---|---|
1 | 4 | 2 | 2000 | 214.36 |
1 | 4 | 4 | 2000 | 227.53 |
1 | 4 | 8 | 2000 | 237.81 |
pbft:sieve
clients | VP Nodes | iteration | tps |
---|---|---|---|
1 | 4 | 2000 | 253.49* |
注:sieve 算法目前在所有交易完成后较长时间内并没有取得最终的结果,出现大量类似“vp0_1 | 07:49:26.388 [consensus/obcpbft] main -> WARN 23348 Sieve replica 0 custody expired, complaining: 3kwyMkdCSL4rbajn65v+iYWyJ5aqagXvRR9QU8qezpAZXY4y6uy2MB31SGaAiaSyPMM77TYADdBmAaZveM38zA==”警告信息。
结论
单客户端连接情况下,tps 基本在 190 ~ 300 范围内。
最后
以上就是坚定大叔为你收集整理的区块链:性能与评测的全部内容,希望文章能够帮你解决区块链:性能与评测所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复