栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

有关spring Cloud的相关总结

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

有关spring Cloud的相关总结

SpringCloud 1 你是用SpringCloud的哪些组件?每个组件的作用是啥?
  • gateway:网关,自动路由,负载均衡,统一权限控制
  • feign:远程调用
  • ribbon:负载均衡
  • hyxtrix:熔断器,用来保护整个链路的安全
  • nacos:注册中心+配置中心
  • eureka:注册中心
  • sentinel:限流
2 nacos和eureka的区别:

Nacos的服务实例分为两种类型:

  • 临时实例:如果实例宕机超过一定时间,会从服务列表剔除,默认的类型。

  • 非临时实例:如果实例宕机,不会从服务列表剔除,也可以叫永久实例。

  • spring:
      cloud:
        nacos:
          discovery:
            ephemeral: false # true:临时实例,false:非临时实例,永久实例
    
  • Nacos与eureka的共同点

    • 都支持服务注册和服务拉取
    • 都支持服务提供者心跳方式做健康检测
  • Nacos与Eureka的区别

    • Nacos支持服务端主动检测提供者状态:临时实例采用心跳模式,非临时实例采用主动检测模式:【正式工每天都会被检查状态,临时工也就心跳检测自己上报状态】
    • 临时实例心跳不正常会被剔除,非临时实例【正式工】则不会被剔除
    • Nacos支持服务列表变更的消息推送模式,服务列表更新更及时
    • Nacos集群默认采用AP(可用)方式,当集群中存在非临时实例时,采用CP(一致性)模式;Eureka采用AP(可用)方式
3 CAP理论(https://www.ruanyifeng.com/blog/2018/07/cap.html)
  • Consistency(一致性):
  • Availability(可用性)
  • Partition tolerance (分区容错性)
4 (ribbon)负载均衡有哪些算法?
  • 轮询
  • 随机
  • 能者多劳:性能强劲的承担更多的请求
  • 设计比重:为每个服务器赋予一个权重值,根据权重选择提供服务的服务器
  • 一致性hash算法:使用相同参数的请求总是发到同一台服务器处理,只有当这台服务器宕机了,才会转发到其他服务器
  • 最近最少使用:
5 什么雪崩问题?如何解决?

​ 微服务间相互调用,因为调用链中的某一个服务器发生故障,引起整个系统都无法提供服务的情况,就是雪崩。

​ 解决方案:

  • 限流:是对服务的保护,避免因瞬间高并发高流量导致服务故障,进而避免雪崩,这是一种预防措施
  • 补救措施:超时处理,熔断处理等等
6 SpringBoot自动装配的原理:(自定义Springboot启动器)
  • SpringBoot启动的时候通过**@EnableAutoConfiguration**注解找到META-INF/spring.factories配置文件中所有的自动配置类,并对其进行加载,

  • TanhuaAutoConfiguration它实际上就是一个javaConfig形式的Spring容器配置类,它们都有一个**@EnableConfigurationPerperties**的注解,通过这个注解启动XXXProperties命名的类去加载全局配置中的属性,如server.port,而XXXProperties通过@ConfigurationProperties注解将全局配置文件中的配置与当前类的属性进行绑定,从而实现自动装配

    我们在做探花交友项目的时候,我们编写了环信自动装配、百度人脸检测自动装配、阿里云短信自动装配

    1 在app-server中调用自动配置类,这个类的配置文件就需要 配置 系统需要的属性

    2 在auto-config项目中,抽离公共的环境配置
    3 通过@ConfigurationProperties读取公共的环境配置
    4 编写xxTemplate,实现短信发送业务
    5 在spring.factories中通过@EnableAutoConfiguration自动加载模板类

7 dubbo的注册中心(nacos)挂掉之后,服务器调用者还能调用服务提供者吗?

​ 可以。因为dubbo拉取从注册中心拉取服务之后,都会在本地缓存服务列表,所以当注册中心挂掉之后,dobbo会直接从本地获取服务地址进行调用。

8 dubbo支持哪些协议?他们的优缺点有哪些?
  • Dubbo: 虽然dubbo支持的协议有很多,但是Dubbo官方推荐使用dubbo协议,所以在我们的项目中都是用的是dubbo协议,其他的协议我没有去做深入的了解
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/863116.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号