什么是WeBASE

WeBASE(WeBank Blockchain Application Software Extension) 是在区块链应用和底层之间搭建的一套通用组件。围绕交易、合约、密钥管理,数据,可视化管理来设计各个模块,开发者可以根据业务所需,选择子系统进行部署。WeBASE屏蔽了区块链底层的复杂度,降低开发者的门槛,大幅提高区块链应用的开发效率,包含节点前置、节点管理、交易链路,数据导出,Web管理平台等子系统。

开发者搭建完区块链节点后,部署WeBASE,基于WeBASE开发区块链应用,将会大幅提升效率。

设计原则

按需部署 WeBASE抽象应用开发的诸多共性模块,形成各类服务组件,开发者根据需要部署所需组件。

微服务 WeBASE采用微服务架构,基于spring-boot框架,提供Restful风格接口。

零耦合 WeBASE所有子系统独立存在,均可独立部署,独立提供服务。

可定制 前端页面往往带有自身的业务属性,因此WeBASE采用前后端分离的技术,便于开发者基于后端接口定制自己的前端页面。

整体架构

[架构图]

各子系统简介

子系统名 功能 介绍
webase-front 节点前置 集成web3jsdk,提供restful风格的接口,客户端可以使用http的形式和节点进行交互,如获取节点快高,部署合约,发送交易等。内置内存数据库,采集节点健康度数据。内置web控制台,实现节点的可视化操作。
webase-transcation 交易上链代理 接收交易请求,缓存交易到数据库中,异步上链。可大幅提升吞吐量,解决区块链的tps瓶颈。
webase-node-mgr 节点管理 处理前端页面所有web请求,管理各个节点的状态,管理链上所有智能合约,对区块链的数据进行统计、分析,对异常交易的审计,私钥管理等;
webase-web WeBASE管理平台 数据概览:可以查看机构、节点、合约、区块和交易详情。节点管理:查看区块链上所有节点的状态。合约管理:编辑、编译、部署、调试、测试合约。私钥管理:管理各用户的公私钥。系统监控:各节点的监控数据查看。交易审计:异常交易事后审计。

应用开发步骤

1 部署WeBASE。 2 登录WeBASE管理平台,添加节点信息,私钥信息等。 3 开发智能合约,编译、部署、测试合约。 4 根据所写合约和交易api的格式,发送交易。 5 登录管理平台查看交易详情,查看交易统计信息,在线运维管理