zoukankan      html  css  js  c++  java
  • 区块链:性能与评测

    过早优化,往往引来各种麻烦。

    一项技术究竟能否实用,有两项基本指标十分关键:一是功能的完备;一是性能的达标。

    本章将试图对已有区块链技术进行一些评测。所有结果将尽可能保证客观准确,但不保证评测方法是否科学、评测结果是否具备足够参考性。

    简介

    区块链的平台性能跟很多因素都有关系,特别在实际应用中,根据应用场景的不同和系统设计和使用的不同,可能同一套平台最终在业务体现上会有较大差异。

    在这里,仅侧重评测一般意义上的平台性能。

    所有给出指标和结果仅供参考,由于评测环境和方案不同,不保证结果的一致性。

    生产环境中应用区块链技术请务必进行充分验证评测。

    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 范围内。

  • 相关阅读:
    logging模块、sys模块、shelve模块
    re模块、hashlib模块
    包、常用模块
    模块
    迭代器、生成器、递归、二分法
    函数对象、函数嵌套、名称空间与作用域、闭包函数、装饰器
    函数
    文件处理
    字符编码
    Djiango导读
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13312699.html
Copyright © 2011-2022 走看看