IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 区块链 -> 试玩儿趣链的区块连平台 -> 正文阅读

[区块链]试玩儿趣链的区块连平台

前言

无意中发现趣链最近推出了一款区块链(联盟链)的平台,其试用版可供学生,爱好者和从业人员学习。正好最近想了解一下联盟链,就将其下载下来游玩一下。如果也想了解这个平台的朋友,可以点击这个链接。我也是基于官方文档来完成这篇文章的

产品架构

下图是源于官网的架构图,由于该产品并未开源(仅部分功能开源),感觉目前版本可能没有做全部的支持。目前支持的功能可以点击这个链接查看。

学习下面的架构设计,如果以后你需要设计一个联盟链的架构,就有了一个参考的方向。
在这里插入图片描述

核心模块

共识算法

目前这个平台已经支持 RBFT,SOLO 共识算法。一般联盟链支持的共识算法都是 BFT 拿来修改的,RBFT 是趣链自己搞的高健壮性(Robust) BFT 的共识算法。SOLO 共识是针对于单点的共识,估计也是趣链自己搞的吧,想了解这两个共识机制的朋友,可以戳这个链接

官方文档提到了自适应共识算法,不太清楚这个自适应是自动根据情况进行选择共识算法,还是只是说支持多种共识算法,但要手工配置。

智能合约执行引擎

这一块目前平台支持 HVM(Java 语言编写的智能合约)和 EVM(Solidity 语言编写的智能合约),试用版未支持 BVM(Go 语言编写的智能合约)。对于智能合约这一块,我一直觉得联盟链能够支持很多传统语言来进行开发,这一点比很多公链自己搞一套编程语言来进行智能合约开发要好。

数据存储

趣链的这个平台主要的账户模型还是传统的用户模型。即某用户A发起一笔合约调用交易,使得某合约中的变量a的值由0变为1,并持久化到合约账户数据库中存储。

在存储上,采用了混合存储的方式,针对不同数据类型设计相应的存储方式。这种混合存储的方式不太清楚现在的公链有没有用这样的架构,据我了解好像是没有的。
在这里插入图片描述

加密机制

加密的话,该平台提供了国标和国密两套。

扩展功能

扩展功能我关注的是数据索引和数据归档,其他的扩展功能可以去官方文档了解。

数据索引

也就是数据搜索的意思,目前区块链链上搜索一直是学界和产业界的关注点,因为区块链自身的数据结构,往往只能遍历,而且是精确遍历。在趣链的官方文档中,提到了它可以支持模糊搜索,比较好奇是怎么实现的。

数据归档

理论上链上数据会不断增加,该平台提供了数据归档的功能,让一部分数据迁移至线下。

安装步骤

先决条件

一般来说区块链平台最好还是运行在 Linux 环境下,此次我选择了 ubuntu18.04 这个版本,至于 ubuntu 的安装方式这里就不做过多介绍了。

ubuntu 安装好后,一些基本的配置也要做好,如换国内的源,安装 curl,git,pip3.

同时还需要安装 docker 和 docker-compose,这一部分的安装教程可以直接参见官方教程,docker 的安装docker-compose 的安装。免费版对 docker 的要求是 v19.03版和 docker-compose 为 v1.27.4 版本。最新的 docker 和 docker-compose 都符合版本要求。

安装合并版

该平台提供了合并版(集成了轻量级 Baas 平台)和单独版本(可以支持多机部署),我这里选择了合并版,对学生和爱好者来说足够了。

下面的步骤也是参照官方教程,你可以点击这个链接查看。

第一步,到指定链接注册,下载安装包。

第二步,解压安装包后,进入目录,安装依赖

noname@noname-MRC-WX0:~/文档$ cd trial/
noname@noname-MRC-WX0:~/文档/trial$ ls
trial_version
noname@noname-MRC-WX0:~/文档/trial$ cd trial_version/
noname@noname-MRC-WX0:~/文档/trial/trial_version$ ls
cfg.toml  docker     requirements.txt  script    stop.sh
conf      README.md  reset.sh          start.sh

在该目录下,使用 pip 或 pip3 安装

pip install -i https://mirrors.aliyun.com/pypi/simple/ -r requirements.txt 

第三步,编辑配置文件
一般来说,只需要修改网卡的部分,因为我是在本机测试,所以只要将网卡设为 127.0.0.1 即可。
通过 ifconfig 来查看你的网卡

noname@noname-MRC-WX0:~/文档/trial/trial_version$ ifconfig
docker0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        inet 172.17.0.1  netmask 255.255.0.0  broadcast 172.17.255.255
        ether 02:42:77:e7:12:48  txqueuelen 0  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 374  bytes 36518 (36.5 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 374  bytes 36518 (36.5 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

wlp2s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 10.6.224.145  netmask 255.255.248.0  broadcast 10.6.231.255
        inet6 fe80::9291:ad6a:2875:db36  prefixlen 64  scopeid 0x20<link>
        ether f4:d1:08:bf:9c:17  txqueuelen 1000  (Ethernet)
        RX packets 8631  bytes 8581795 (8.5 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 5385  bytes 1168816 (1.1 MB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo 为还回地址(127.0.0.1),打开配置文件,将网卡部分修改为 lo,lo 为 local 的简化表达。
打开配置文件,gedit conf/values.toml

# 全局配置
[global]
# 安装用户
user = "hyperchain"
# 网络配置,具体参考《README.md》文档
# 默认 eth0,这里我修改为了 lo
network = "lo"

[console]
# 免费试用版web页面访问端口
port = 30080

[flato]
# 是否自动部署flato节点
enable=true

[flato.node1]
# 节点1的访问端口
jsonport=43221

[flato.node2]
# 节点2的访问端口
jsonport=43222

[flato.node3]
# 节点3的访问端口
jsonport=43223

[flato.node4]
# 节点4的访问端口
jsonport=43224

第四步,开始安装了,启动 bash 命令,运行下面的命令就可以慢慢等待,我是等了小半个上午才装好。非 root 要加 sudo,不然会报错“权限拒绝”

sudo ./start.sh

然后就慢慢等待吧。

第五步,安装好后就可以通过 https://127.0.0.1:30080 这个链接访问了,并体验了。

如果你想删除组建或者重置数据则使用下面的两条命令,特别的是,stop.sh 我以为只是停用组建,结果没想到是直接删除了了,导致我第二次启动的时候,所有的模块要重新下载,因为下载等待时间过于漫长,加之该平台未开源,遂放弃。

// 删除组件
sudo ./stop.sh
// 重置数据
sudo ./reset.sh
  区块链 最新文章
盘点具备盈利潜力的几大加密板块,以及潜在
阅读笔记|让区块空间成为商品,打造Web3云
区块链1.0-比特币的数据结构
Team Finance被黑分析|黑客自建Token“瞒天
区块链≠绿色?波卡或成 Web3“生态环保”标
期货从入门到高深之手动交易系列D1课
以太坊基础---区块验证
进入以太坊合并的五个数字
经典同态加密算法Paillier解读 - 原理、实现
IPFS/Filecoin学习知识科普(四)
上一篇文章      下一篇文章      查看所有文章
加:2021-12-14 15:59:44  更:2021-12-14 15:59:52 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 -2024/12/29 8:52:24-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码
数据统计