快捷搜索: 王者荣耀 脱发

微服务注册中心之consul

consul的优点:

1.使用了go语言编写在并发方面比java语言性能都要优秀 2.方便部署,因为安装包里面只有一个可执行文件 3.基于raft算法(比zookper的实现的算法更容易理解)

consul角色,根据启动命令

Consul启动命令三种 -dev (开发模式) ./consul agent -dev -client (部署到正式环境命令)客户端角色 ./consul agent -client -server (集群)服务端角色 ./consul agent -server 集群一般是3~5个,推荐是奇数台的服务器,规定挂掉集群数量大于等于一半集群不可用,用三台和用4台的效果是一样的,集群过多同步时间就会变成长所以不推荐 提供者向consul注册服务,consul定时请求服务者查看健康状态,如果不健康了就剔除服务列表(/health) 消费者请求consul取出自己所需的服务,temptable是一个表格形式的文档 Consumer拿到注册的id去提供者取自己所需要的服务。 集群模式 Consul分为两个区域,客户端client和服务端server,consul一台挂掉会有从成为主,client只是做请求触发,占用的资源很少

集群的搭建

服务端的启动

./consul agent -server -bind=192.168.10.101 -client=0.0.0.0 -ui -bootatrap-expect=3 -data-dir=/usr/local/consul/data/ -node=server-01

-bind是自己的服务地址 -client是放行所有服务 -ui是可以在8500的界面上可以显示 bootatrap-expect是集群的数量 -data-dir数据存储地址 客户端的启动

./consul agent -client -bind=192.168.10.1 -client=0.0.0.0 -data-dir=/usr/local/consul/data/ -node=server-01

集群的关联

./consul join 192.168.10.101(把其他的consul服务添加到101的consul服务中,101的为主) 客户端也要做同样的操作 查询

./consul/members
经验分享 程序员 微信小程序 职场和发展