检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
gossip异常导致peer账本块高不一致 执行以下命令,查看块高,并与其它peer比较,确认块高存在差异,落块停止或严重滞后。 peer channel getinfo –c {通道名} 重启peer,重新拉取区块,如果无效,执行3~5。 进入peer容器,/etc/hyperledger
根据链代码开发语言的不同,实例化后的容器占用内存量并不相同。对于单个peer节点,单个Go语言链代码容器占用运行内存约10MB,单个Java语言链代码容器占用约110MB。例如需要实例化100个Java语言链代码,建议CCE节点规格为16核32GB。
链代码结构 本章以Go语言为例来介绍。链代码即一个Go文件,创建好文件后进行函数开发等操作。 当前支持两种方式编写链码:1.4风格(使用shim包)和2.2风格(使用fabric-contract-api-go包)。 区块链服务BCS支持使用两种风格编写的链代码。 链代码接口 Fabric
停止计费 当在区块链服务中,删除Hyperledger Fabric增强版实例,且删除时,勾选删除容器集群(CCE),区块链服务将停止计费。详细介绍请参见停止计费。 成本管理 使用区块链服务时,成本主要分为拥有成本和运维成本。
华为云区块链引擎支持自定义策略授权项如下所示 表1 华为云区块链引擎常用操作与系统权限关系 接口 对应的API接口 授权项 依赖授权项 IAM项目 (Project) 企业项目 (Enterprise Project) 查询服务信息 GET /v2/{project_id}/huaweicloudchain/service-info
通过对生成的智能合约选择背书策略、安装合约的组织等配置,完成合约的安装和实例化,智能合约最终运行在背书节点中的一个Docker容器内。
表3 华为云区块链引擎对应接口的权限依赖关系 接口 对应的API接口 授权项 依赖授权项 IAM项目 (Project) 企业项目 (Enterprise Project) 查询服务信息 GET /v2/{project_id}/huaweicloudchain/service-info
SDK的使用 安装SDK 如何获取GO、JAVA压缩包、Jar文件请参考概述。 GO:将下载的压缩包解压到用户的$GOPATH目录下。 Java:将下载的压缩包中的Jar文件添加到项目的依赖中,可按以下方式添加: 将下载的SDK Jar包注册至Maven本地仓库,可参考以下命令:
调用链代码 前提条件 已安装Java JDK开发环境。JDK需要安装1.8版本64位,如果本地已安装JDK,可以通过命令java -version来查看JDK版本。 登录区块链服务管理控制台,进入“应用案例”,下载“快速入门”中的Java应用示例。Windows操作系统下载并解压到
示例Demo 应用程序开发需要使用go mod,因此请确保GO111MODULE为on、镜像源配置。请确保可正常访问华为云镜像网站,环境设置命令如下 go env -w GO111MODULE=on go env -w GOPROXY=https://repo.huaweicloud.com
响应参数 状态码: 200 表3 响应Body参数 参数 参数类型 描述 applyer String 申请者的身份标识 applyerName String 申请者的名称 provider String 授权者的身份标识 providerName String 授权者的名称 service
ABstore) Init(ctx contractapi.TransactionContextInterface, A string, Aval int, B string, Bval int) error { // 使用println函数输出的信息会记录在链码容器日志中
应用示例 为了说明同态加密库的具体使用方法,提供一个应用示例代码和对应的链码示例代码。该应用的主要功能是实现用户间相互转账,同时使用同态加密库保护用户的转账交易信息。 该应用的使用包括三个步骤:注册用户(同时会初始化用户余额),用户间转账,查询用户余额。 应用使用命令行的方式进行业务操作
具体获取方法如下: 在已购买区块链实例卡片中,单击“容器集群”名称,进入云容器引擎CCE页面。 单击实例所在集群名称,进入集群信息页面。在左侧导航栏,单击“工作负载”。
概述 合约主要用于操作账本上的数据。作为运行在区块链上的、特定条件下自动执行的代码逻辑,合约是用户利用区块链实现业务逻辑的重要途径,基于区块链特点,合约的运行结果是可信的,其结果是无法被伪造和篡改的。 智能合约由用户自行编写上传并保证安全,请务必注意命令注入等相关安全问题。 为了确保代码在不同用户之间的一致性运行
若当前区块链服务部署在CCE集群上,该名称为各节点对应的负载(pod)名称;若当前区块链服务部署在IEF集群上,可进入“智能边缘平台”服务,进入“边缘应用”->“容器应用”,查询负载名称。
} } 响应示例 状态码: 200 Ok { "blockchain_id" : "12691561-a50d-5207-6041-7346c90d4499", "blockchain_name" : "bcs-api", "operation_id" : "BCSSVC01
商用 安装轻节点插件 2 支持选择1.15版本的容器集群。 支持选择容器集群版本为1.15。 商用 基于CCE集群部署区块链 3 支持基于社区Hyperledeger Fabric 1.4版本到 2.0版本的升级能力。
查看告警信息 BCS服务自身提供运维监控能力,技术支持工程师可以通过BCS查看告警信息。告警源包括BCS和CCE,常见告警参见表1。 建议根据下表做初步筛查,如仍无法消除告警,请联系技术支持人员。 对于告警源为CCE的告警,若BCS服务相关实例状态正常,且业务正常,则请参考CCE
链代码调测 对链代码进行调测,可以使用CloudIDE进行单元测试,具体请参见以下操作。 操作步骤 进入CloudIDE首页。 创建链代码工程,具体请参见创建并启动IDE实例。 图1 创建链代码工程 链代码调测。 以下截图对1.4风格(使用shim包)的链代码进行调测。 父主题: