Week6 作业

一、CAP原理
对于分部署存储系统,可用性、一致性和分区耐受性三者是不能同时满足的。
一致性:每次读取数据返回的都应该是最近写入的数据或者返回一个错误,而不能是一个过期数据;
可用性:每次请求都有一个响应,而不是一个错误或者失去响应;不过这个响应不需要保证数据是最近写入的数据;
分区耐受性:即使因为网络的原因,部分服务器节点之间消息丢失或者延时,系统依然是可以操作的。
当网络分区失效发生的时候,我们要么取消操作,这样做数据是一致的,但是系统是不可用的;要么我们继续写入数据,但是数据的一致性就得不到保证;
对于一个分布式系统而言,网络失效一定会发生,也就是说,分区耐受性是必须要保证的,那么在可用性和一致性上必须二选一。
当网络分区失效,也就是网络不可用的时候,如果选择了一致性,系统就可能返回一个错误或者干脆超时,即系统不可用。如果选择了可用性,那么系统总是可以返回一个数据,但是并不能保证这个数据是最新的。
所以,关于CAP原理,更准确的说法是。在分布式系统必须要满足分区耐受性的情况下,可用性和一致性无法同时满足。
评论