1. 初识Tendermint
Tendermint(TM)是the Cosmos network旗下的一个区块链项目。TM能安全且保持一致性地在多台机器之间复制应用程序。TM的共识算法基于节点不可信的设计,也就是允许拜占庭错误。TM主要分成两个部分。
一个是一个区块链共识引擎(Tendermint Core)。他主要负责节点之间的数据同步有序传输,实现拜占庭共识机制。
另一个是区块链应用接口(ABCI)。它是一种接口通讯协议,可以通过各种编程语言实现应用逻辑。应用逻辑和TM Core通过ABCI实现了解耦。
下图对Tendermint的工作原理进行了简单的剖析。
2. 安装Tendermint
Tendermint的安装方法有两种,一种是直接下载编译好的二进制文件。下载地址为:
https://github.com/tendermint/tendermint/releases
另一种安装方法是源码编译安装。这里介绍官网推荐的安装方式。
本次安装需要安装三件东西,Go,Tendermint和Glide,操作系统为Linux。
1) 安装Go
访问下载地址https://golang.google.cn/dl/下载相应的安装包。
解压缩tar.gz包到安装目录下,
tar -zxvf go1.10.linux-amd64.tar.gz -C /usr/local/
设置PATH
export PATH=$PATH: /usr/local/go/bin
设置GOPATH
mkdir /mygo && export GOPATH=/mygo
创建三个文件夹
mkdir /mygo/src /mygo/bin /mygo/pkg
刷新环境变量
source /etc/profile
然后执行go version , 当看到具体版本信息返回表明已成功。