vitess源码阅读笔记cache系列之用go实现通用资源池
更新日志: 更新至2012.4.8的vitess代码 新的代码增加了同步用的条件变量,没有空闲资源时的排队不再使用channel来同步(使用其它编程语言的同学可以方便的移植这个代码了),转而使用condition variable。不再使用mu.RLock,统一使用Lock,不再纠结。 整体代码清晰了许多。 为了进一步提高性能和代码复用,vitess还提供了通用的池管理,RoundRobin.go中实现了通用的资源池,方便管理池内资源总数,超时。 先上第一道菜:RoundRobin在整个vite...阅读全文