跳至主要內容
CAP 和 BASE

CAP 和 BASE

一致性

一致性(Consistency)指的是多个数据副本是否能保持一致的特性。

在一致性的条件下,分布式系统在执行写操作成功后,如果所有用户都能够读取到最新的值,该系统就被认为具有强一致性。

数据一致性又可以分为以下几点:

  • 强一致性 - 数据更新操作结果和操作响应总是一致的,即操作响应通知更新失败,那么数据一定没有被更新,而不是处于不确定状态。
  • 弱一致性 - 系统在写入数据成功后,不承诺立即能读到最新的值,也不承诺什么时候能读到,但是过一段时间之后用户可以看到更新后的值。那么用户读不到最新数据的这段时间被称为“不一致窗口时间”。
  • 最终一致性 - 最终一致性作为弱一致性中的特例,强调的是所有数据副本,在经过一段时间的同步后,最终能够到达一致的状态,不需要实时保证系统数据的强一致性。

钝悟...大约 9 分钟分布式分布式理论分布式一致性ACIDCAPBASE
Redis 事务

Redis 事务

Redis 仅支持“非严格”的事务。所谓“非严格”是指:Redis 事务保证“全部执行命令”;但是,Redis 事务“不支持回滚”。

关键词:事务ACIDMULTIEXECDISCARDWATCH

Redis 事务简介

什么是 ACID

ACID 是数据库事务正确执行的四个基本要素。


钝悟...大约 7 分钟数据库KV数据库Redis数据库KV数据库Redis事务ACID
分布式事务

分布式事务

事务简介

什么是事务

在数据存储环境中,可能会出现各种各样的问题:

  • 数据库软件或硬件可能会随时失效(包括正在执行写操作的过程中)。
  • 应用程序可能随时崩愤(包括一系列操作执行到中间某一步)。
  • 应用与数据库节点间的连接可能会随时中断,数据库节点间也存在同样问题。
  • 多个客户端可能同时写入数据库,导致数据覆盖。
  • 客户端可能读到一些无意义的、部分更新的数据。
  • 客户端之间由于边界条件竞争所引入的各种奇怪问题。

钝悟...大约 43 分钟分布式分布式协同分布式协同综合分布式协同事务互斥ACID2PC3PCTCC本地消息表消息事务SAGAXA