分布式一致性问题
在分布式环境中引入数据复制机制后,不同数据节点间可能出现的,并无法依靠计算机应用程序自身解决的数据不一致情况。其实就是在对一个数据进行更新的同时,必须确保也能够更新其他副本,否则会出现数据不一致的情况。
一致性级别:
强一致性:写入什么,系统读出来也会是什么,用户体验好,但往往对系统的性能影响比较大。
弱一致性:约束了系统在写入成功后,不承诺立即可以读到写入的值,也不具体承诺多久之后数据能够达到一致,但会尽可能 的保证到某个时间级别后,数据达到一致。细分为
会话一致性:只保证对于写入的值,在同一个客户端会话中可以立即读到一致的值,但其他会话不能保证。
用户一致性:只保证对于写入的值,在同一个用户中可以立即读到一致的值,但其他用户不能保证。
最终一致性:只保证对于写入的值,在同一个用户中可以立即读到一致的值,但其他用户不能保证。
问:为什么会出现数据一致性问题?
答:在分布式系统中,需要解决的是数据复制问题,数据复制就会带来一致性挑战。