cloud 微服务总结
一、dubbo 和 cloud、及cloudAlibaba 的 区别,你们选择哪种方案?为什么?
二、nacos 服务注册原理、和eureka 、zookeeper 区别
三者均为注册中心,nacos是阿里的,以jar形式下载,eureka是一个boot项目,
参考文档:两者区别
三、nacos集群或高可用:
参考文档:集群原理nacos
四、Ribbon 原理及内部算法实现扩展等
负载均衡算法参考
五、网关种类、作用、原理、配置
zull:
getway:
内部实现:
gateway对比zuul多依赖了spring-webflux,在spring的支持下,功能更强大,内部实现了限流、负载均衡等,扩展性也更强,但同时也限制了仅适合于Spring Cloud套件
zuul则可以扩展至其他微服务框架中,其内部没有实现限流、负载均衡等。
请求超时问题现象:
504 Gateway Time-out
配置超时时间
六、限流、熔断、降级区别
七、限流、熔断、降级对应的组件及区别?
Hystrix:属于sping ;依赖引入 jar;代码配置复杂;web简单功能少。
和
sentinel :属于 springCloud allibaba ,独立的服务 jar;代码配置少;web页面简单功能多。
八、Fegin作用及原理
服务的调用,底层封装了Ribbon 和Hystrix,类似mybatis框架的mapper接口文件,只有接口,没有实现类,底层通过动态代理生成实现类。
参考:fegin的功能
参考:fegin的源码
Fegin原理 ?参考
Fegin的动态调用原理?
Fegin如何设置统一的请求头:
九、配置中心的种类、区别及原理
1,confing:属于springcloud 技术范畴,一般通过gitHub 地址做, 动态配置。
参考:config源码分析
2,nacos :属于alibab 范畴,连接数据库,有支持编辑的web页面,功能更强大。
参考:nacos 配置中心
十、jwt 模式 用过吗?
1、用过,无状态权限校验。
重要参考:点击进入
十一、服务链路追踪类型和区别
十二、RPC为什么用http做通信?
十三、Eureka 怎样做到平滑下线?
eureka 自我保护机制:
#自我保护模式,当出现出现网络分区、eureka在短时间内丢失过多客户端时,会进入自我保护模式,
# 即一个服务长时间没有发送心跳,eureka也不会将其删除,默认为true
eureka.server.enable-self-preservation=true
十四、
十五、cloud 执行时序流程?
十六、微服务限流的解决方案?
十七、Boot、mvc、cloud三者的区别?
十八、hystrix信号量和线程池隔离的两种区别
19、cloud 的断路器Hystrix 的 原理?
20、
21、eureka是AP还是CP模型,和nacos的区别
1.CAP指的是 一致性(Consistency) ,可用性(Availability), 分区容错性(Partition tolerance) ,在分布式中,网络是不可控的,所以首先要保证 P ,然后在A和C之间做选择。 要么AP ,要么CP 。
2. Eureka是弱一致性,采用的是ap,保证了他的可用性,Eureak选择AP 保证了可用性,降低了一致性 ;
Nacos 默认 AP ,可以 CP和AP可以切换 ;
Zookeeper 就是 CP ;
Redis 采用AP模式。
22、eureka 和zookeeper 区别
23、zk如何保证CP的?
24、
25、sentinel原理及使用方法,降级的源码
26、
27、
28、