Hyperledger 添加 Caliper 度量区块链性能

  • Kent Weare
  • 谢丽

2018 年 4 月 11 日

话题:开源语言 & 开发架构

看新闻很累?看技术新闻更累?试试下载 InfoQ 手机客户端,每天上下班路上听新闻,有趣还有料!

3 月 19 日,Hyperledger(Linux 基金会管理下的全球合作项目)宣布,Caliper 已经被技术指导委员会接收为一个 Hyperledger 项目。Hyperledger Caliper 是一个区块链基准测试工具,让项目可以不间断地跟踪不同区块链实现的性能特性。Hyperledger Caliper 初始版本的重点是每秒事务数(TPS)、延迟和资源利用率。

Hyperledger Caliper 计划提供 TPS、延迟和资源利用率结果,以便其他 Hyperledger 项目在构建自己的框架时可以使用这些信息。这可以帮助其他项目针对自己特定的场景选择恰当的区块链实现。

低 TPS 是区块链实现常常遭人诟病的地方。但是,如果没有一个通用的工具对性能进行基准测试,就无法改变那种情况。Hyperledger 旨在解决区块链的测试方法,建立公共基线:

显然,现如今的每种区块链框架或平台都有自己的独特优势。鉴于这种多样性,我们认为,缺少一种公用的基准测试工具是不利的。

Hyperledger 还提到了三个核心问题以及为什么需要一种通用工具。

  • 缺少源代码——不同的项目有不同的性能报告,但由于它们不提供源代码,所以很难进行验证评价,也无法对不同的项目执行相同的评价。
  • 性能指标没有统一的定义——Hyperledger 性能 & 扩展性工作组(PWSG)是定义这些指标的理想之地。
  • 没有一种大家都接受的基准场景供基准测试——用户总是想知道应用场景,恰当的应用场景可以帮助用户理解区块链及其性能指标。基准测试的场景也可以开放讨论,并欢迎贡献。

Hyperledger Caliper 不会公布在实现中包含了这个工具的项目的基准测试结果。相反,Hyperledger Caliper 致力于为这些项目提供工具,让它们可以使用通用的工具、指标和由 Hyperledger PWSG 定义的术语执行自己的测试。

从技术上讲,Hyperledger Caliper 利用可插拔的适配器方案来操作不同的区块链实现:

Hyperledger Caliper 的关键组件是适配层,这一层的作用是把多种区块链解决方案集成到 Caliper 框架中。适配器是针对每个区块链被测系统(SUT)实现的,负责将 Caliper NBI 转换成相应的区块链协议。Caliper NBI 是一组通用区块链接口,其中包含与后台区块链系统交互的操作,例如,安装智能合约、调用合约、从分类帐查询状态,等等。

图片来源:https://github.com/hyperledger-archives/caliper/blob/master/docs/Architecture.md#benchmark-engine

Caliper 项目最初于 2017 年 5 月启动,全球信息与通信技术公司华为积极参与了该项目的设计和开发。项目有一个GitHub 库,欢迎贡献。目前,Hyperledger Fabric 1.0 和 Sawtooth 支持 Caliper,对 Ethereum 及其他区块链的支持尚在规划中。

查看英文原文:Hyperledger Adds Caliper to Measure Blockchain Performance

开源语言 & 开发架构