点击上方蓝色字关注我们~ 最近听说有一道面试题,是关于应用系统出现高CPU的原因,面试者说当时回答的不太好,他只是回答应该是应用出现了死循环,面试官继续追问还有其它什么原因造成高CPU的?面试者一时想不出来,所以就回复暂时想不到其它原因了。所以针对这个问题,回答的应该是挺糟糕的吧。幸好面试官继续追问出现如何排查高CPU,面试者还能比较好的回答如何排查和解决,最 […]
点击上方蓝色字关注我们~ 最近听说有一道面试题,是关于应用系统出现高CPU的原因,面试者说当时回答的不太好,他只是回答应该是应用出现了死循环,面试官继续追问还有其它什么原因造成高CPU的?面试者一时想不出来,所以就回复暂时想不到其它原因了。所以针对这个问题,回答的应该是挺糟糕的吧。幸好面试官继续追问出现如何排查高CPU,面试者还能比较好的回答如何排查和解决,最 […]
现在研究下Eureka服务下线的源码。由服务续约的源码我们知道,如果客户端在90秒内没有继续跟服务端进行心跳的话,服务端会进行下线客户端并且更改状态将其剔除,并且也会在集群中告知(同步)其它节点。 〓Eureka Client /** * 注销服务,调用client的cancel服务,往里面看也就是调用了服务端的http delete 请求进行服 […]
这里主要看下Eureka关于服务续约的源码,其实大致跟服务注册流程类似,不过更多细节和逻辑还是很大不同的。 〓Eureka Client // 在DiscoveryClient里有renew方法,大概知道其是服务续约的入口。renew使用http的方式发送心跳给服务端,如果服务端返回404,说明是某些原因造成服务是没有注册成功,那么就会再次调用r […]
前面已经剖析了Eureka初始化、Eureks服务注册,现在继续Eureka服务拉取。Eureka服务集群中,客户端会向服务端拉取已经注册的实例,实时更新注册服务列表。 〓Eureka Client // DiscoveryClient实例创建时会调用服务拉取,默认开启拉取注册信息。 // 接着调用拉取注册方法,如果拉取失败,则从备份中拉取 if […]
EurekaClient在启动时会进行一系列初始化操作,本篇文章主要解析EurekaClient端向EurekaServer端发起注册请求的具体过程,具体分为EurekaClient端发送请求和EurekaServer端接收请求。在较新的版本看到代码进行了优化,所以还是以某一版本为准进行剖析。这里是1.X版本最新版本1.9.15。 〓Eureka […]
Eureka启动的过程有client端和server端, Eureka client端入口是DiscoveryClient类, Eureka server端入口是EurekaBootStrap类, 接下来我们就从源码看下它们做了什么吧! 〓Eureka Client端启动 1)看下DiscoveryClient类图: 由此看出DiscoveryClient实现 […]
BeanUtils (1) BigDecimal (1) CDC (1) ETL (1) github (1) heap (1) LLaMa (1) MAT (5) MDM (1) Sora (1) TCP (1) 业务图 (1) 企业应用 (1) 停机迁移 (1) 内存泄露 (4) 协议 (1) 可用性 (1) 基础设施层 (1) 堆内存 (1) 堆外存 (1) 大事记 (1) 实时协作 (1) 对象转换 (1) 应用架构 (1) 异常 (3) 技术规范 (1) 技术选型 (4) 提示工程 (1) 数据交换 (1) 数据共享 (1) 数据双写 (1) 日期 (1) 时间 (1) 时间线 (1) 术语 (1) 架构方案 (14) 流程图 (1) 精度 (1) 线程模型 (1) 经验分享 (1) 网络编程 (2) 解耦 (1) 软件复杂性 (1) 软件工程 (1) 重构 (4) 重试 (1) 隔离级别 (1) 集群扩容 (1) 领域层 (3) 领域模型 (1)
COPYRIGHT © 2014-2024 verysu.com . ALL RIGHTS RESERVED.
Theme Kratos Made By Seaton Jiang