开源进展 | WeBASE发布lab版,助力一键部署FISCO BCOS v3.0

微众银行区块链

共 3516字,需浏览 8分钟

 ·

2022-02-27 22:45

WeBASE(WeBank Blockchain Application Software Extension)是在区块链应用和FISCO BCOS底层之间搭建的一套通用组件,围绕交易、合约、密钥管理、数据、可视化管理来设计各个模块,屏蔽了区块链底层的复杂度,从而极大降低研发门槛,提速区块链应用开发效率。


针对FISCO BCOS最新发布的 v3.0(还未了解FISCO BCOS v3.0的伙伴,戳这里看详情),WeBASE团队协同FISCO BCOS开源社区,紧锣密鼓开展适配工作,研发WeBASE lab版,以便开发者高效部署和管理FISCO BCOS v3.0。目前,WeBASE lab已取得阶段性进展,现正式面向社区发布使用,欢迎大家star并积极体验。


一言以蔽之,WeBASE lab提供与FISCO BCOS v3.0相匹配的链上数据概览、合约IDE、交易管理、私钥管理等运维管理功能,并提供最新的快速部署工具。我们期望通过WeBASE lab,用户可以一键部署FISCO BCOS v3.0,并在可视化的Web管理台中管理智能合约,发起交易与链交互。


需要提请大家注意的是,WeBASE lab的主要作用,在于方便用户对FISCO BCOS v3.0进行运维管理,WeBASE既有的1.x版本(适用FISCO BCOS 2.x版本)也会持续更新迭代,永久维护。使用WeBASE时,大家可以通过以下任一方式查看当前使用的版本信息,以更好地完成部署工作:
  • 查看部署WeBASE时输出的版本信息
  • 查看WeBASE源码中的release_note
  • 查看安装包中的release_note


接下来,我们一起来看看WeBASE lab的功能介绍吧!


  适配FISCO BCOS v3.0新特性


围绕FISCO BCOS v3.0中的新特性,WeBASE lab当前完成适配的功能点列举如下:
  • 节点列表不再显示PBFT View,以节点的Timeout状态及出块是否超时,来判断节点是否正常;
  • 节点列表设置共识节点时,增加节点权重值设置;
  • 更新WeBASE合约仓库中的CRUD Table合约为KVTable合约;
  • WeBASE-Front节点前置服务可连接多个机构内节点,在FISCO BCOS v3.0“专业Pro版”中,适配多个RPC节点的模式,并不再限制同机部署或仅连接单个节点;
  • 合约IDE支持struct入参;struct在合约编译时会转换为Tuple[],即Tuple数组类型。输入struct入参时,我们需要用方括号[]将参数括起来。举个例子,在下文的HelloWorld合约中,set方法入参为自定义的struct类型 Item ,当 Item 的入参数据为 a=1,b="test" 时,在WeBASE合约IDE中输入的参数值应为 [1,"test"] ,并额外用一个方括号将参数括起来。

    注:struct入参需要在合约IDE中使用0.6.10的solidity,获取struct类型的数据时,返回值应返回struct中的内容,而不直接返回struct本身,如下文中的get方法所示。

pragma solidity ^0.6.10;pragma experimental ABIEncoderV2;struct Item {  uint256 a;  // 整型  string b;  // 字符串}contract HelloWorld {    Item item;    function set(Item memory i) public {        item = i;    }    function get() public view returns (uint256 a, string memory b) {        return (item.a, item.b);    }}


  支持一键部署FISCO BCOS v3.0“轻便Air版”的链


在WeBASE lab一键部署配置文件common.properties中,填写好WeBASE和FISCO BCOS的配置后,输入一行python命令,即可一键完成FISCO BCOS v3.0“轻便Air版”的链和WeBASE lab的部署。


注:本次更新属于WeBASE lab中的 WeBASE lab-rc1 版,与 FISCO BCOS v3.0.0-rc1 版本兼容,因此一键部署中填入的版本号如下所示:


# WeBASE子系统的最新版本(lab或以上版本) webase.web.version=lab-rc1 webase.mgr.version=lab-rc1 webase.sign.version=lab-rc1 webase.front.version=lab-rc1
...# Fisco-bcos version(v3.0.0 or above)fisco.version=v3.0.0-rc1

部署完成后,WeBASE的详细版本号将可输出。部署后的服务状态检查与使用方法可以参考文末提供的WeBASE的在线文档。



目前一键部署仅可部署FISCO BCOS v3.0“轻便Air版”的链节点。该版中,一条链只有单个群组,如果需要使用多群组的链,则需要使用FISCO BCOS v3.0“专业Pro版”。


  支持多群组链管理


在FISCO BCOS v3.0“专业Pro版”中,单个链节点包含了多个微服务,如RPC服务、Gateway服务和节点服务等。在此基础上,“专业Pro版”的链可以包含多个群组,且多个群组可以是国密或非国密,不再限制单链的多个群组必须是同一种加密类型。



因此,在“专业Pro版”的链下,WeBASE lab切换群组时,可根据链类型自动切换为国密或非国密的加密类型,以支持相对应的合约编译、合约解析等功能。


此外,当我们需要在WeBASE lab中管理“专业Pro版”的链时,可使用WeBASE企业级部署的方法,逐个安装WeBASE的子服务来实现,并在WeBASE-Front节点前置服务连接链节点,将节点前置添加到WeBASE管理台中,随后可对“专业Pro版”的链进行管理。


WeBASE lab通过节点前置服务访问链节点微服务中的RPC服务。节点前置服务不再限制同机部署,不再要求仅连接单个节点,而推荐连接多个同机构的RPC节点,可方便准确获取链节点的数据。


在后续更新中,WeBASE lab将持续支持FISCO BCOS v3.0的更多功能。欢迎社区用户向WeBASE提出需求或反馈建议,一同优化WeBASE lab的功能体验。


  即刻使用


上述优化及功能所涉及的最新代码和技术文档已同步更新,位于WeBASE代码仓库的【lab】分支


本次更新属于WeBASE lab中的 WeBASE lab-rc1 版,与FISCO BCOS v3.0.0-rc1 版本兼容,欢迎体验和star支持。


如需咨询技术问题,欢迎本公众号对话框回复【小助手】进技术交流群。


WeBASE 代码仓库:
https://github.com/WeBankBlockchain/WeBASE/tree/lab
WeBASE 代码仓库国内镜像:
https://gitee.com/WeBank/WeBASE/tree/lab
WeBASE 技术文档:
https://webasedoc.readthedocs.io/zh_CN/lab
WeBASE 技术文档国内镜像:
https://osp-1257653870.cos.ap-guangzhou.myqcloud.com/WeBASE/doc/lab-rc1/index.html


首次体验WeBASE,可参考一键部署文档:
https://webasedoc.readthedocs.io/zh_CN/latest/docs/WeBASE/install.html


向我们报告问题,欢迎提交issue:
https://github.com/WeBankFinTech/WeBASE/issues



浏览 36
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报