springcloud
文章平均质量分 80
室内篮球
这个作者很懒,什么都没留下…
展开
-
Eureka-Server源码核心代码入口
先从注册表获取该服务的实例列表(gMap),再从gMap中通过实例的id 获取具体的 要续约的实例。在AbstractInstanceRegistry的postInit方法中,定义EvictionTask定时任务,构建定时器启动该任务,执行任务中剔除方法 evict()。这个值在Eureka中被定义为85%,一旦触发自我保护机制,Eureka会尝试保护其服务注册表中的信息,不再删除服务注册表中的数据。可以看出,其实服务续约的操作非常简单,它的本质就是修改服务的最后的更新时间。当该条件成立时,认为服务过期。原创 2023-12-26 21:24:57 · 1006 阅读 · 0 评论 -
Eureka-Client源码核心代码入口
DiscoveryClient这个类用来和Eureka-server互相协作,看一下它的注释,它可以完成服务注册,服务续约,服务下线,获取服务列表等工作。Jersey是一个Restful请求服务的框架,与常用的springmvc类似,后面会讲到在Eureka-server拦截请求的时候也用到了Jersy。当eureka-client关闭时,不会立刻关闭,需要先发请求给eureka-server,告知自己要下线了。查看父类DiscoveryClient构造器最终到达位置(带 @Inject注解的构造器)原创 2023-12-26 21:01:19 · 413 阅读 · 0 评论 -
Ribbon原理源码分析
1、介绍原创 2023-03-17 08:45:11 · 233 阅读 · 0 评论 -
Eureka原理源码分析
Eureka Server之间通过复制的方式完成数据的同步,Eureka还提供了客户端缓存机制,即使所有的Eureka Server都挂掉,客户端依然可以利用缓存中的信息消费其他服务的API。综上,Eureka通过心跳检查、客户端缓存等机制,确保了系统的高可用性、灵活性和可伸缩性。Eureka Server提供服务注册服务,各个节点启动后,会在Eureka Server中进行注册,这样EurekaServer中的服务注册表中将会存储所有可用服务节点的信息,服务节点的信息可以在界面中直观的看到。原创 2023-03-16 21:22:52 · 127 阅读 · 1 评论