什么是 Tendermint?
来源:互联网 发布:公司记账软件 知乎 编辑:程序博客网 时间:2024/05/29 05:55
Tenermint 是一个软件,用于在多台机器安全一致地复制一个应用。所谓安全,指的是即使有多达 1/3 的机器出现任意故障的情况下, Tendermint 仍然能够正常工作。所谓一致,指的是每一个正常工作的机器都会有着同样的交易日志,计算相同的状态。安全一致的复制是分布式系统中一个至关重要的问题:从货币到选举,到基础设施规划,它在广泛应用的容错中承担了一个极其重要的角色。
能够容忍机器以任何一种,甚至包括变得有害的方式发生故障,被称为拜占庭容错(BFT)。拜占庭理论已经有几十年的历史,但是很大程度上,直到最近像比特币,以太坊这样区块链技术的成功,它的软件实现才开始变得流行。区块链技术只是以一种现代化的方式对 BFT 的再形式化,而且重点关注 P2P 网络和密码验证。区块链这个名词来源于交易的处理方式,通过区块的批量方式处理交易,每个块包含了前一个块的加密哈希,以此来形成一个链。实际上,区块链数据库真正地优化了 BFT 设计。
Tendermint 包含了两个主要的技术组件:一个区块链共识引擎和一个通用的应用程序接口。共识引擎,叫做 Tendermint Core,保证了每一台机器以相同的顺序记录同一笔交易。应用程序接口,叫做 应用程序区块链接口(ABCI),保证了交易可以通过任何一种编程语言进行处理。与其他预先打包内置状态机(比如键值存储或者一个奇怪的脚本语言)的区块链和共识方案不同,开发者可以使用 Tendermint 实现应用的 BFT 状态机复制,而这些应用可以用任何语言编写,而且开发环境对开发者也十分适合。
Tendermint 的设计原则是易使用,易理解,高性能,对于各种分布式应用都十分有用。
本文译自:What is Tendermint?
- 什么是 Tendermint?
- Tendermint: 什么是 ABCI (应用区块链接口)
- Tendermint: 共识概览
- docker-compose启动Tendermint + Ethermint
- Tendermint 与其他技术的比较
- 区块链大集合,Tendermint也加入了…
- 什么是
- 什么是JAVA?什么是UNIPORTAL?
- 什么是需求?什么是客户??!!
- 什么是模式?什么是框架?
- 什么是PR、什么是BD?
- 什么是模式?什么是框架?-
- 什么是模式?什么是框架?
- 什么是模式?什么是框架?
- 什么是爱情?什么是婚姻?
- 什么是域?什么是域控器?!
- 什么是模式?什么是框架?
- 什么是程序?什么是应用程序?
- 几种所谓的“高级IO接口”,其中你知道几个
- java 键盘输入多种方法
- select poll epoll的区别
- ”奇葩“的递归
- linux iostat命令
- 什么是 Tendermint?
- netstat
- dwarf调试信息格式入门
- test_and_set_bit
- Java语言和C语言的static的区别以及它们的内存分配方式
- dwarf简介
- 最小生成树之prim算法
- dwarf
- 数据结构之最短路径(Floyd)