Otter源代码解析(四)
全部文档索引:
Otter源代码解析(一): http://eyuxu.iteye.com/blog/1941894
Otter源代码解析(二)?: http://eyuxu.iteye.com/blog/1942518
Otter源代码解析(三): http://eyuxu.iteye.com/blog/1942519
Otter源代码解析(四): http://eyuxu.iteye.com/blog/1942521
Otter源代码解析(五): http://eyuxu.iteye.com/blog/1942522
Otter源代码解析(六): http://eyuxu.iteye.com/blog/1942549
Otter源代码解析(七): http://eyuxu.iteye.com/blog/1942578
Otter源代码解析(八): http://eyuxu.iteye.com/blog/1942780
Otter源代码解析(九): http://eyuxu.iteye.com/blog/1942786
?
在介绍Node的SETL过程之前,简单说明下Node-common关于Node节点管理的机制,这样看后面的东东的时候连续性稍微好点:
?
?这个图解释一个一个问题:节点是在Manager上面管理的,但是Node节点实际上是需要与其他的Node节点及manager通讯的,因此NodeList(Group内的其他节点)的信息在Node节点是需要相互知道的。 Otter采用的是类似于Lazy+cache的模式管理的。即:
1)真正使用到的时候再考虑去Manager节点取过来;
2)取过来以后暂存到本地内存,但是伴随着一个失效机制(失效机制的检查是不单独占用线程的,这个同学们可以注意一下,设计框架的时候需要尽可能做到这一点)