【AICon】硅谷视野+中国实践,汇聚全球顶尖技术的 AI 科技盛会 >>> 了解详情
写点什么

FISCO BCOS 2.0 使用教程: 群组架构实操演练

  • 2020-04-19
  • 本文字数:1786 字

    阅读完需:约 6 分钟

FISCO BCOS 2.0使用教程: 群组架构实操演练

仲裁链组织结构

下图是一个仲裁链示例:



企业 A、企业 B 和企业 C 分别和仲裁机构合作,采用区块链搭建仲裁服务。在群组架构下,搭链方式为:仲裁机构配置两个节点,分别加入三个群组;企业 A 配置两个节点,加入群组 1;企业 B 配置两个节点,加入群组 2;企业 C 配置两个节点,加入群组 3。

仲裁链组网详情

上节介绍了仲裁链组织结构,这里在一台机器的环境下模拟仲裁链组网环境。仿真的组网环境如下:


  • 仲裁机构:包括两个节点,节点 IP 均为 127.0.0.1,同时属于群组 1,群组 2 和群组 3

  • 企业 A:包括两个节点,节点 IP 均为 127.0.0.1,仅属于群组 1

  • 企业 B:包括两个节点,节点 IP 均为 127.0.0.1,仅属于群组 2

  • 企业 C:包括两个节点,节点 IP 均为 127.0.0.1,仅属于群组 3


温馨提示:


实际应用场景中,不建议将多个节点部署在同一台机器,建议根据机器负载选择部署节点数目。本例中仲裁机构节点归属于所有群组,负载较高,建议单独部署于性能较好的机器。

仲裁链搭建关键流程

如下图所示,使用 FISCO BCOS 2.0 快速建链脚本搭建仲裁链(以及所有其他区块链系统)主要包括五个步骤:



  • step1:安装依赖软件,主要是 openssl 和 build_chain.sh 脚本

  • step2: 使用 build_chain.sh 生成区块链节点配置

  • step3: 启动所有机构区块链节点

  • step4: 启动控制台

  • step5: 使用控制台发送交易


下面我将就这五个步骤详细叙述构建仲裁链的关键流程。

安装依赖软件

搭建 FISCO BCOS 2.0 区块链节点需要准备如下依赖软件:


  • openssl:FISCO BCOS 2.0 的网络协议依赖 openssl

  • build_chain.sh 脚本:主要用于构建区块链节点配置,可从 https://raw.githubusercontent.com/FISCO-BCOS/FISCO-BCOS/master/tools/build_chain.sh 下载

生成区块链节点配置

FISCO BCOS 2.0 提供的 build_chain.sh 可快速生成区块链节点配置,按照【仲裁链组网详情】介绍的节点组织结构,先生成区块链配置文件 ip_list:


#ip_list 文件内容格式:[ip]:[节点数] [机构名] [所属群组列表]


$ cat > ipconf << EOF127.0.0.1:2 arbitrator 1,2,3127.0.0.1:2 agencyA 1127.0.0.1:2 agencyB 2127.0.0.1:2 agencyC 3EOF
复制代码


调用 build_chain.sh 脚本构建仿真的本机仲裁链:


$ bash build_chain.sh -f ipconf -p 30300,20200,8545
复制代码


区块链节点配置成功后,会看到[INFO] All completed.的输出。

启动节点

生成区块链节点后,需要启动所有节点,节点提供 start_all.sh 和 stop_all.sh 脚本启动和停止节点。


# 启动节点$ bash start_all.sh
# 查看节点进程$ ps aux | grep fisco-bcos
复制代码


不发交易时,共识正常的节点会输出+++日志,使用 tail -f node*/log/* | grep "++"查看各节点是否共识正常。

启动控制台

控制台是用户与 FISCO BCOS 2.0 区块链节点交互的重要工具,实现查询区块链状态、部署调用合约等功能,能够快速获取用户到所需要信息。


启动控制台前需获取并配置控制台:


  • 获取控制台:从 https://github.com/FISCO-BCOS/console/releases/download/v1.0.0/console.tar.gz 下载控制台

  • 配置控制台:主要拷贝证书、配置 conf/applicationContext.xml 所连接节点的 IP 和端口信息,控制台关键配置如下:


当然,控制台也支持连接多个群组,并提供了 switch 命令来切换群组,连接多个群组时,需要在 groupChannelConnectionsConfig bean id 中配置多个连接,分别连接到对应群组的区块链节点。


注: 控制台依赖于 Java 8 以上版本,Ubuntu 16.04 系统安装 openjdk 8 即可。CentOS 请安装 Oracle Java 8 以上版本。


使用 start.sh 脚本启动控制台,控制台启动成功会输出如下界面:

向群组发交易

控制台提供了 deploy HelloWorld 指令向节点发交易,发完交易后,区块链节点块高会增加


# ... 向group1发交易...$ [group:1]> deploy HelloWorld0x8c17cf316c1063ab6c89df875e96c9f0f5b2f744# 查看group1当前块高,块高增加为1表明出块正常,否则请检查group1是否共识正常$ [group:1]> getBlockNumber 1# ... 向group2发交易...# 切换到group2$ [group:1]> switch 2Switched to group 2[group:2]deploy Helloworld...
复制代码

总结

本文介绍了搭建仲裁链的关键过程,FISCO BCOS 2.0 的操作文档 step by step 介绍了如何部署多群组区块链,详细流程可以参考https://fisco-bcos-documentation.readthedocs.io/zh_CN/release-2.0/docs/tutorial/group_use_cases.html


本文转载自 FISCO 金链盟公众号。


原文链接:https://mp.weixin.qq.com/s/gwk1ejkdIHXIV3RkD9Ez9g


2020-04-19 17:41740

评论

发布
暂无评论
发现更多内容

LeetCode刷题笔记:数组中重复的数据

OpenHacker

JavaScript 算法 LeetCode

关于云端应用开发语言选择

穿过生命散发芬芳

3月月更

八个Docker的真实应用场景

hongfei

Docker 容器

《减压脑科学》有田秀穗

xujiangniao

读书

做一个小程序到底要多少钱?都有哪些费用?

源字节1号

开源 前端开发 后端开发 开发小程序

RENO: Netflix的快速事件通知系统

俞凡

架构 netflix 大厂实践 3月月更

【建议收藏】Kafka 面试连环炮, 看看你能撑到哪一步?(上)

王江华

大数据 kafka 面试 中间件 消息队列

Linux之telnet命令

入门小站

Linux

IntellJ IDEA诺依开发部署文档

北极的大企鹅

开源 开源技术

持续集成工具篇:Jenkins与流水线管理

自动化 持续集成 jenkins 持续交付 构架

实用机器学习笔记二十六:NAS

打工人!

学习笔记 NAS 机器学习算法 3月月更 神经网络架构搜索

Web 键盘输入法应用开发指南 (7) —— 开发实战(二)

天择

JavaScript 键盘 实战 输入法 3月月更

微博评论系统的高性能高可用计算架构

阿卷

架构实战营

Eclipse 不为人所知的另一面 - 企业管理软件领域 ABAP 编程语言开发利器

Jerry Wang

eclipse ide 开发者 abap 3月月更

[算法练习]2 二进制中1的个数

暖蓝笔记

3月月更

12个iOS技术面试题及答案总结

原来是泽镜啊

ios 程序员 架构师 ios开发

Nacos

陈新卫

[算法练习]3 三数之和

暖蓝笔记

3月月更 38妇女节

建设领先的AI原生云,百度智能云落地新一代高性能AI计算集群

百度大脑

架构训练营毕业总结

Geek_e6f7f6

架构实战营

一文彻底搞懂原型链

CRMEB

口腔数字化时代:AI牙医的防御基建与攻坚

脑极体

Spring cloud 之 CircuitBreaker篇

邱学喆

Spring Cloud circuit break Resilience4j

【CAD】快捷键大全

謓泽

3月月更

纯CSS 神奇的边框特效

德育处主任

css3 纯CSS 前端可视化 css动画

面向智能合约、区块链、Web3、以太坊开发工具指南

devpoint

Ethereum infura Solidity Web3.0 3月月更

低代码实现探索(三十八)业务场景封装

零道云-混合式低代码平台

微博评论的高性能高可用计算架构

AragornYang

架构训练营 架构实战营

模块化编程及LCD1602调试工具

謓泽

3月月更

在线JSON转toml工具

入门小站

工具

AI语音识别-我给浏览器加了个语音搜索功能

DS小龙哥

语音识别 3月月更

FISCO BCOS 2.0使用教程: 群组架构实操演练_文化 & 方法_FISCO金链盟_InfoQ精选文章