目录
一、服务发现与注册的由来
1.单体架构时代
2.SOA时代
方式一
方式二
3.微服务时代
方案一
方案二
二、服务发现与注册的技术选型与Eureka简介
1.服务发现与注册的技术选型
2.Eureka简介
3.新的替换方案---Nacos
三、Eureka设计理念
1.主要解决的三大问题
服务实例如何注册到服务中心
服务实例如何从服务中心剔除
服务实例信息一致性问题
2.AP由于CP
3.Peer to Peer架构
主从复制
对等复制
(1)客户端
(2)服务端
4.Zone及Region设计
5.SELF PRESERVATION设计
四、Eureka基本架构与细化架构分析
(一)基本架构分析
(二)细化结构分析
1.与服务治理直接相关的几个概念:
register
renew
cancel
eviction
fetch register
2.注册中心服务器
3.服务提供者
4.服务消费者
五、Eureka高可用方案与Eureka区域亲和性
1.Eureka Serve的高可用
2.Eureka Server的区域亲和性
六、Eureka核心类与核心操作分析
1.Eureka核心类
InstanceInfo(截取部分代码,并做简单标注)
LeaseInfo(截取部分代码,并做简单标注)
ServiceInstance(截取部分代码,并做简单标方法
InstanceStatus
2.核心操作
七、Eureka参数调优及监控
(一)核心参数
1.Client端:基本参数+定时任务参数+http参数
(1)基本参数
(2)定时任务参数
(3)http参数
2.Server端:基本参数+response cache参数+peer相关参数+http参数
(1)基本参数
(2)esponse cache参数
(3)peer相关参数
(4)http参数
(二)参数调优
常见问题
解决之道
八、总结
参考书籍、文献和资料
干货分享,感谢您的阅读!
随着信息技术的发展和应用系统规模的不断扩大,服务发现与注册成为了构建可靠和高效分布式系统的关键技术之一。本文将探讨服务发现与注册的演进历程,从传统单体架构到当前微服务时代的技术选型和实现方案,重点介绍了Eureka作为一种经典的服务发现和注册中心的设计理念、架构特点以及高可用解决方案。
一、服务发现与注册的由来
1.单体架构时代
服务自成一体,依赖的少数外部服务会采用配置域名的方式访问
eg:使用外部短信供应商的短信发送接口,会使用appId和appKey调用该供应商的域名接口即可。
2.SOA时代
由单体应用拆分为粒度较粗的服务化架构,依赖的内部服务比较多,服务间调用采用nginx策略。
eg:A服务部署在3台虚拟机上,这三个服务实例都有自己独立的内网IP,假设B服务要调用A服务的接口服务,可通过以下两种方式:
方式一
假设知道A服务的地址,则直接修改B服务的nginx如下