zookeeper笔记
上传文件并解压
在Zookeeper集群中,若超过半数以上服务节点不可用,才会造成整个服务不可用,所以其集群节点数一般都是至少3个节点以上的奇数个
这次以3个节点为例.
在根目录创建目录zkCluster,在zkCluster目录创建3个目录,zk1,zk2,zk3
分别在zk1,zk2,zk3中创建目录data和log
分别在zk1,zk2,zk3的data目录创建文件myid,内容分别为1,2,3
进入zookeeper根目录下的conf目录,把zoo_sample.cfg复制名为zoo1.cfg
修改zoo1.cfg内容
server.后面的1,2.3指的是data目录下myid的值."="号后面的值是ip:通信端口:选举端口
保存退出后复制两份zoo2.cfg和zoo3.cfg.修改data和log的目录和端口号
进入zookeeper的bin目录,启动3个节点
sh zkServer.sh start zoo1.cfg
sh zkServer.sh start zoo2.cfg
sh zkServer.sh start zoo3.cfg
查看节点信息
sh zkServer.sh status zoo1.cfg
Zookeeper集群中leader负责监控集群状态,follower主要负责客户端链接获取服务列表信息.同时参与投票.
-----------------------------------
springboot整合dubbo
添加dubbo依赖
编辑服务消费者application.yml配置文件
服务消费者controller层通过@reference注解引用接口
服务提供者在业务处理层通过@service注解暴露服务(此@service是dubbo里面的不是spring的)
在服务提供者的application.yml文件中配置信息
dubbo有负载均衡功能,默认为随机发送
策略:
RandomLoadBalance 随机发起请求 该配置是默认的
RoundRobinLoadBalance 权重相同时轮询策略
LeastActiveLoadBalance 根据响应时间的长短实现负载均衡.如果服务器响应时间 越短,则用户会将大量的请求发送给该服务器.
ConsistentHashLoadBalance 根据hash算法实现负载均衡.实现服务器绑定.
配置方式: 可以在服务端/客户端通过注解的形式配置.引用时将负载均衡类名前缀