SpringCloud技术栈系列文章
文章平均质量分 60
以SpringCloud技术体系为基础,涵盖入门及高阶实战、源码分析等类型的文章,使用大量图例解释复杂的技术机制。
BigBigWorld_
关注大数据、关注云监控。
展开
-
服务注册发现:Eureka源码剖析(8)核心机制之服务下线与实例摘除
本篇发布于2020-02-25 19:11:11当调用eureka client的shutdown方法时,会走服务下线流程。(这个shutdown方法会在Spring Cloud Netflix中spring上下文关闭时调用)触发下线监听器停止调度任务(心跳、拉取注册表)调用eureka server的 DELETA /v2/apps/APP_NAME/服务实例ID 接口释放一系列jersey client的网络资源注销监控心跳监控注册表监控eureka server.原创 2021-06-06 11:24:21 · 202 阅读 · 0 评论 -
服务注册发现:Eureka源码剖析(7)核心机制之Eureka-Clien与Eureka-Server之间的心跳机制
本篇发布于2020-02-18 19:30:11当eureka client启动时,会有一个定时任务每隔30秒向eureka server发送心跳心跳会将服务实例信息带上请求的eureka server的 PUT /v2/apps/APP_NAME/服务实例ID根据响应做如下处理如果返回状态码为404说明eureka server没有这个服务实例,此时会走服务注册流程如果返回状态码200,说明心跳成功了,会更新本地的最近一次成功心跳时间戳...原创 2021-06-06 11:24:07 · 207 阅读 · 0 评论 -
服务注册发现:Eureka源码剖析(6)核心机制之Eureka-Client间隔30s增量抓取
本篇发布于 2020-02-16 22:10:13eureka client启动后,每隔30秒会有一个定时任务抓取增量注册表请求的eureka server的 GET v2/apps/delta 接口会根据返回的服务实例的类型,比如新增、修改、删除来分别处理新增、修改 直接添加到本地注册表(添加操作实际上是幂等的,会先删除,再添加)删除 直接从本地注册表删除eureka server的ApplicationsResource.getContainerDifferenti.原创 2021-06-06 11:23:57 · 672 阅读 · 0 评论 -
服务注册发现:Eureka源码剖析(5)核心机制之Eureka-Server的注册表多级缓存
本篇发布于 2020-02-08 19:20:19注册表多级缓存(就是那个ResponseCache)的原理如下:第一级缓存 readOnlyCacheMap,所有的读请求都会先走这一层第二级缓存是一个基于Guava Cache的 readWriteCacheMap 当第一层获取不到数据时,会走这一层数据加载 将自己的本地注册表数据以key为ALL_APPS填充到第二级缓存中去缓存失效时机二级缓存失效时机当服务注册、服务下线、服务状态变更、服务剔除时会触发缓存失效.原创 2021-06-06 11:23:45 · 189 阅读 · 0 评论 -
服务注册发现:Eureka源码剖析(4)核心机制之Eureka-Client首次启动抓取全量注册表
本篇发布于2020-02-03 19:10:11Eureka Client首次抓取是在启动时进行的通过eurekaTransport.queryClient这个jersey客户端,请求eureka server的 GET /v2/apps/APP_NAME 接口拿到响应的Applications后会将顺序打乱,然后存到本地eureka server的ApplicationsResource.getContainers方法会收到请求从响应缓存中把key为ALL_APPS的数据数据返回给客户端.原创 2021-06-06 11:23:34 · 1347 阅读 · 0 评论 -
服务注册发现:Eureka源码剖析(3)服务注册
文章目录Eureka Client启动流程Eureka Client是如何进行服务注册的Eureka Server是如何完成服务注册的总结本篇发布于2019-12-13 19:30:22Eureka Client启动流程public class ExampleEurekaClient { public static void main(String[] args) throws UnknownHostException { ExampleEurekaClient sampl原创 2021-06-06 11:23:22 · 199 阅读 · 0 评论 -
服务注册发现:Eureka源码剖析(2)Eureka-Server启动
文章目录Eureka Server模块分析1、Eureka Server原来是一个简单的Servlet应用2、找到了入口代码`com.netflix.eureka.EurekaBootStrap`环境初始化 & 基于单例模式的配置管理器配置文件加载以及面向接口的配置项读取基于构造器模式的服务实例构造将自己作为Eureka Client完成复杂构造服务上下文构造以及初始化总结本篇发布于 2019-12-09 19:15:13Eureka Server模块分析1、Eureka Server原来原创 2021-06-06 11:23:07 · 378 阅读 · 0 评论 -
服务注册发现:Eureka源码剖析(1)源码阅读环境搭建
文章目录源码阅读环境搭建工程结构速览调试须知本篇发布于2019-12-08 22:10:13源码阅读环境搭建ide:IntelliJ IDEA包管理:gradleeureka版本:1.9.13源码下载:https://github.com/Netflix/eureka/archive/refs/tags/v1.9.13.zip将build.gradle中的如下插件版本改一下,否则导入idea会报错:plugins { id 'nebula.netflixoss' versio原创 2021-06-06 11:22:52 · 365 阅读 · 0 评论 -
服务注册发现:Eureka-入门
文章目录Eureka解决了什么问题快速体验Eureka1、构建一个Eureka Server2、开发一个服务提供者3、开发一个服务调用者4、进行实验5、画图讲解Hello Word原理Eureka集群实战1、eureka注册中心集群2、将服务改造为注册到eureka server集群服务健康自检机制1、基于`spring-boot-actuator`的服务健康检查2、`spring-cloud-eureka`整合`spring-boot-actuator`实现自定义服务健康检查3、生产经验分享Eureka常原创 2021-06-06 11:22:36 · 487 阅读 · 0 评论 -
Spring-Cloud-Netflix技术栈系列文章
为什么写?时下Spring Cloud Netflix全家桶已经成为了事实上的微服务实践落地的不二选择,笔者在公司也负责、参与一系列的微服务改造项目,该系列文章涵盖了笔者从刚接触该技术栈的入门到实战,再到源码分析的整个过程,是对自己经历的一次梳理,希望对您也有所帮助。准备写哪些内容?主要针对Spring Cloud Netflix主要技术栈,包括:服务注册发现Eureka负载均衡 Ribbon声明式接口调用 Feign资源隔离、限流、熔断、降级 Hystrix网关 Zuul预计会按照此原创 2021-06-06 11:22:12 · 186 阅读 · 0 评论