手撕zookeeper:作为注册中心负载均衡
作者:潘吉祥 要说最开始接触zookeeper,已经是很久很久以前了,应该是学习dubbo的时候了解的,简单地安装、启动一下,作为dubbo的注册中心。 那个时候觉得挺神奇的,居然能服务注册与发现!但是也仅限于这样的感觉,因为我觉得具体实现对于我来说太遥远了,那种感觉就像我在学习Java基础的时候听到负载均衡、集群这类概念。这么说可能还是没有确切地表达出那种感觉,尤其是作为一个文科生而言。 虽说如此,但是我还是有些不自量力地在简历上写了“熟悉zookeeper”……当然了,打脸的时候总会出现,只是迟早问题,大概一年后:那你说说zk有几种节点类型?我…… 不争馒头争口气,自己挖的坑自己得填好,这下怎么也得深入了解一下了。大概也是自己视野开阔的原因,此时抛开zookeeper不说,仔细想想注册中心简单点来说也就是存放对应关系的一个容器而已,再简单点就是一个map映射。有了思路,深入学了学zookeeper,于是开始试着把自己的服务注册到zookeeper。 这里关于zookeeper的知识就不再赘述,你可以把他当做一个存放键值对的数据库,当然zookeeper的功能远不限此。我们直接进入正题:把自己的服务注册到zookeeper并实现负载均衡(关于节点的操作不懂得小伙伴可以先学习一下zookeeper的基本操作)。 开拔之前我们先来理一下思路,这往往是最重要的: