-
注册中心:实际上就是存放接口的调用地址。(存的就是IP和端口号,因为一般接口名称不会改变)
-
接口地址:IP和端口/接口名称(接口名称一般不会改变,注册中心不存放接口名称)
-
最大特性:能够实现动态感知。
-
微服务注册中心架构原理:
(1)微服务架构设计常用名称:
生产者:提供接口被其他服务调用
消费者:调用别人写好的接口
注册中心:存放调用接口地址和动态感知
(2)
(3)
5.本地负载均衡器和服务器端负载均衡器的区别:
本地负载均衡器:
(1)负载均衡算法都是在本地实现
(2)依赖于注册中心
(3)应用场景:Dubbo、feign客户端、rpc远程调用框架
(4)框架:客户端Ribbon
服务器负载均衡器:
(1)负载均衡算法都是在服务器端实现
(2)依赖于nginx
(3)场景:Tomcat负载均衡
(4)框架:nginx lvs
6.分布式配置中心:
(1)主流分布式配置中心框架:SpringCloud Config、携程阿波罗、disConfig、Nacos分布式配置中心
Nacos = SprngCloud Config + Eureka(服务注册与发现)
(2)为什么需要分布式配置中心:传统的项目管理配置文件的时候,非常复杂,如果项目已经上线的情况下,需要改配置文件的情况下,有可能需要重新打包发布。
解决办法:1.使用重启方式
2.类加载器 热部署(不安全,性能比较低)
(3)产生:解决传统配置文件不需要重启服务器,自动刷新配置文件。
(4)原理:
1. 管理人员发布配置文件,需要配置文件持久化到硬盘
1. 分布式配置中心服务端 监听 客户端连接。
1. 本地项目发送连接到分布式配置中心服务端,分布式配置中心服务端读取配置文件返回给 本地项目(客户端)。
1. 如果分布式配置中心服务端发现配置文件发生变化的情况下,通知本地项目刷新配置文件。
(5)Data.id= 服务名称-版本.结尾
客户端默认的情况读取:服务名称.properties
- 微服务网关:
(1)什么是微服务网关:所有的微服务api接口入口都是从网关实现转发。
(2)微服务网关解决的问题:
1. 解决统一微服务登录认证问题,减少代码冗余性
2. 跨域的问题
3. 保护服务 限流 黑名单的白名单
4. 权限控制
5. 统一日志处理
(3)微服务特征:前后端分离
前端(安卓/IOS/Vue)
后端:接口
(4)过滤器与网关之间的区别:
1. 过滤器适合于单个服务请求过滤;
网关适合于过滤整个微服务请求;
2. 过滤器属于局部过滤
网关属于全局过滤
总结:网关解决微服务中冗余代码的问题;
(5)网关在微服务转发原理:
8. Nacos集群部署:
(1)Nacos如何实现集群:nginx + db数据库