摘要:
对于ribbon的使用我们只需要在RestTemplate的申明上面加上 @LoadBalanced 注解之后那么这个RestTemplate就具有了负载均衡的功能 ribbon是怎么实现这一功能的? ribbon会把所有的LoadBalanced 注解的RestTemplate收集起来,基于Sma 阅读全文
摘要:
作为一个注册中心,和eureka类似,核心的功能点: 1.服务注册:nacos客户端携带自身信息向nacos服务端进行注册。 2.服务心跳:客户端定时向服务端发送心跳,告知服务端自己处于可用状态 3.服务健康检查:服务端定时检查客户端是否有发送心跳,如果超过15s没有收到心跳,那么就会将该客户端实例 阅读全文
摘要:
Nacos不仅可以作为注册中心使用,还可以作为配置中心使用。相比于使用spring-cloud-config-server来说,我们可以不用再去建一个配置文件的git仓库,直接可以在nacos的控制台进行操作,同时配置文件热更新也更为方便,只需要在控制台修改,服务端就更新了。 1.加依赖 <depe 阅读全文
摘要:
前面说到基于nacos的注册发现有可以扩展实现我们自己的负载均衡算法(Nacos数据模型),来实现同集群调用,是基于spring.cloud.nacos.discovery.cluster-name参数。另外基于spring.cloud.nacos.discovery.metadata参数也可以实现 阅读全文
摘要:
基于临时序号节点来实现分布式锁 为什么要用临时节点呢?如果拿到锁的服务宕机了,会话失效ZK自己也会删除掉临时的序号节点,这样也不会阻塞其他服务。 流程: 1.在一个持久节点下面创建临时的序号节点作为锁节点,如:/lock/lockId00000001 /lock/lockId00000002 2.获 阅读全文
摘要:
1.服务注册:com.netflix.eureka.registry.AbstractInstanceRegistry#register(InstanceInfo registrant, int leaseDuration, boolean isReplication) 对客户端提供资源接口:com 阅读全文
摘要:
一、集群部署 1.准备三台机器,安装好ZK。强烈建议奇数台机器,因为zookeeper 通过判断大多数节点的存活来判断整个服务是否可用。3个节点,挂掉了2个表示整个集群挂掉,而用偶数4个,挂掉了2个也表示其并不是大部分存活,因此也会挂掉,这样反而觉得多浪费了一台机器资源。 2.修改配置文件 固定语法 阅读全文
摘要:
前面介绍了zk指令的使用,这里说一下java客户端中怎么使用这些指令 <dependency> <groupId>org.apache.zookeeper</groupId> <artifactId>zookeeper</artifactId> <version>3.5.5</version> </ 阅读全文
摘要:
之前通过客户端连接之后我们已经知道了zk相关的很多命令(Zookeeper(1) 初识)。 节点属性: 现在我们就通过stat指令来看看节点都有哪些属性,或者使用get 指令和-s参数来查看节点数据以及属性 abc 节点数据 cZxid = 0x5 创建节点的事务ID ctime = Sat Oct 阅读全文
摘要:
一.ZK简述 Zookeeper,它是一个分布式程序的协调服务,它主要是用来解决分布式应用中的一些数据管理问题,比如集群管理,分布式应用配置,分布式锁,服务注册/发现等等。 它是一个类似于文件系统的树状结构。每个目录被称为znode,可以删除目录,添加子目录这些操作,不同的是每个znode上面都是存 阅读全文