参考书籍《区块链原理、设计与应用》
基本原理

比特币网络工作流程

技术的演化与分类


分布式共识

交易性能

扩展性问题

数据库和存储系统

数据库也是区块链中重要的一环
分布式系统核心问题
单节点结构演变为分布式系统,首先遇到的问题就是一致性的保障。
一致性问题

如果一致性没处理清楚,如线路为a->b->c,A用户购买了a->c的票,而此时没有实时达到一致性,B用户购买b->c的票也会成功,这样在b站点就会出现同一个座位卖给两人。

一致性要求

带约束的一致性


共识算法

一致性是状态
共识算法是对某提案达成一致的过程

常见算法

即便在网络通信可靠的情况下,可扩展的分布式系统共识问题,其通用解法是没有下限即无解的(FLP不可能原理)。

CAP原理

ACID原则

-
基本可用(Basically Available):
分布式系统在出现故障时,允许损失 部分可用功能:
- 响应上的损失(可用,但查询比平时慢)
- 功能上的损失:
-
软状态(Soft state):
软状态是指允许系统中的数据存在中间状态,并认为该中间状态的存在不会影响系统的整体可用性,即允许系统在不同的数据副本之间进行数据同步的过程存在延时。
-
最终一致性(Eventually consistent):
最终一致性强调的是系统中所有的数据副本,在经过一段时间的同步后,最终能够达到一个一致的状态。
Raft算法

PBFT算法
