09 2015 档案
摘要:熟悉Java或如C 等使用共享内存模型作为并发实现的人都比较清楚,编写线程安全的代码很关键的一点就是要控制好 可变状态 ,对于Java开发者来说可能用 内存可见性 更容易理解,在各种关于并发的书籍中都是处理好内存可见性问题编写线程安全的代码就成功了一半了,但我认为“内存可见性”太过于抽象、底层,使开...
阅读全文
摘要:有用过Zookeeper的都知道zoo.cfg配置文件中有dataDir配置项用于存储数据,不过可能有些人不太清楚这个目录具体存储的是那些数据,默认情况下这个目录是用于存储Log(事务日志)与Snapshot(快照)数据,但是Zookeeper还提供了一个用于Log存储目录的配置项dataLogDi...
阅读全文
摘要:ZooKeeper为高可用的一致性协调框架,自然的ZooKeeper也有着一致性算法的实现,ZooKeeper使用的是ZAB协议作为数据一致性的算法, ZAB(ZooKeeper Atomic Broadcast ) 全称为:原子消息广播协议;ZAB可以说是在Paxos算法基础上进行了扩展改造而来的...
阅读全文
摘要:背景 熟悉或了解分布性系统的开发者都字段一致性算法的重要性,Paxos一致性算法从90年提出到现在已经有二十几年了,而Paxos流程太过于繁杂实现起来也比较复杂,可能也是以为过于复杂现在我听说过比较出名使用到Paxos的也就只是Chubby、libpaxos,搜了下发现Keyspace、Ber...
阅读全文