如何将外部数据资源集成到 Hyperledger Fabric 中?
How to Integrate External Data resource into Hyperledger Fabric?
在我的 Fabric 网络中,数据来自外部数据资源。将外部数据资源(Oracle 数据库)集成到 Hyperledger Fabric 的最佳方法是什么
欢迎来到 Whosebug
强烈建议不要使用链代码处理联盟内部的外部数据,因为系统可能会出现一些错误行为
- 由于外部资源,背书可能需要太多时间
- 块创建可能会因外部资源而延迟
- 最后,系统性能会在特定时间变差
您仍然可以使用 golang 或 nodejs 中的 http 模块进行测试
替代方案:您可以在客户端从外部资源准备好数据,然后调用推送数据
避免外部数据资源的另一个重要原因:链码是确定性的,外部数据资源不是。如果外部服务不可用或 returns 不同背书人的结果不同,背书将失败,因为来自不同背书人的结果会有所不同。
绝对必要时,推荐使用预言机:https://developer.ibm.com/articles/cl-extend-blockchain-smart-contracts-trusted-oracle/.
当然有http
、resty
等,但不推荐
在我的 Fabric 网络中,数据来自外部数据资源。将外部数据资源(Oracle 数据库)集成到 Hyperledger Fabric 的最佳方法是什么
欢迎来到 Whosebug
强烈建议不要使用链代码处理联盟内部的外部数据,因为系统可能会出现一些错误行为
- 由于外部资源,背书可能需要太多时间
- 块创建可能会因外部资源而延迟
- 最后,系统性能会在特定时间变差
您仍然可以使用 golang 或 nodejs 中的 http 模块进行测试
替代方案:您可以在客户端从外部资源准备好数据,然后调用推送数据
避免外部数据资源的另一个重要原因:链码是确定性的,外部数据资源不是。如果外部服务不可用或 returns 不同背书人的结果不同,背书将失败,因为来自不同背书人的结果会有所不同。
绝对必要时,推荐使用预言机:https://developer.ibm.com/articles/cl-extend-blockchain-smart-contracts-trusted-oracle/.
当然有http
、resty
等,但不推荐