Hycz's Blog

Life is a game. Why so serious?

出现问题的原因总是因为冲突

如果所有的人都能心想事成,那么世界就美好了。

但是,这显然是不可能的,所以当两者对于同一件事都想心想事成时,冲突就发生了。而分布式系统中的很多问题都是来源于冲突。

比如Paxos中,关于Leader选举的冲突,不同的Acceptor对于同一个值同不同意的冲突,同一轮中收到的不同值之间的相互冲突,etc。比如在Cassandra中同时加入2台节点时,对于token ring分割的冲突。

也正是由于这些冲突的存在,才导致了实现的困难。冲突需要detect,冲突需要handle,最好还要non-blocking,于是所有可能发生冲突的地方都需要小心翼翼的实现。

 

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: