SpringCloud面试题(必看)

这篇具有很好参考价值的文章主要介绍了SpringCloud面试题(必看)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、微服务架构四个核心问题?

1、服务很多,客户端怎么访问

2、这么多服务,服务之间如何通信

3、这么多服务,如何治理

4、服务挂了怎么办


二、微服务优缺点

优点

1、单一职责

2、每个服务足够内聚,足够下小,代码容易理解,这样能聚焦一个指定的业务功能或业务需求

3、开发简单,开发效率高,一个服务可能就是专一的干一件事

4、微服务能够被小团队单独开发,可以是2-5人组成

5、微服务是松耦合,是有功能意思的服务,无论是在开发解读那还是部署阶段都是独立

6、微服务能使用不同的语言开发

7、每个服务都是自己的存储能力

缺点

1、开发人员要处理分布式系统的复杂行

2、随着服务的增加,运费的压力也增大

3、系统部署依赖

4、服务间的通信成本

5、数据一致性

6、系统集成测试

7、性能监控


三、为什么要选择cloud做微服务架构

1、整体解决方案和框架成熟度

2、社区热度

3、可维护性


四、cloud深入了解

1、所有实体类必须实现序列化,传输汇报错误

2、热部署 spring-boot-devtools

3、请求接口 Get/postForObject4、RestTemplate{请求接口地址,参数,返回值类型}

5、需要通过bean把接口注入进去

springcloud面试题,spring cloud,java,微服务


五、Eureka注册中心

1、理念:Eureka:服务注入,显示当前已有的服务,自我保护机制:好死不如赖活着,宁可同时保留所有的服务,也不盲目的注销监看的服务,自我保护机制也可以关闭

2、client.getServices获取微服务列表,getInstances根据服务名字获取服务信息

3、CAP原则:c:强一致性,a:可用性,p:分区容错性,ca:单点集群,满足一致性,可用性的系统,通常可扩展性较差,ap:满足一致性,分区容错性的系统,通常性能不是特比高,cp:满足可用性,分区容错性的系统,通常可能对一致性要求低

4、ACID原则:a:原子性,c:一致性,I:隔离性,d:持久性

5、Zookeeper:保证cp原则:容忍注册中心返回几分钟以前的信息,但是不能容忍服务直接死掉,当master节点失去联系回重新选择master节点,选取时间过长,服务期间不能使用,

6、Eureka:保证ap原则:各个节点平等,其中一个节点死掉也会正常运行,只不过信息可能不是最新的,如果在15分钟内超过85%的节点没有正常心跳,会采取一下措施

a:不会从列表中移除

b:任然能够接受新服务的注册和查询请求,但是不会被同步到其他节点上

c:当前网络稳定时,单前实例新的注册信息会被同步到其他节点中

总结:Eureka可以很好的应对因网络故障导致的部分节点失去联系的情况,而不会像zookeeper那样使整个注册服务瘫痪


六、Ribbon负载均衡

1、cloud ribbon是基于netflix ribbon实现的一套客户端负载均衡工具,提供客户端的软件负载均衡算法,将netflix的中间层链接起来,配置项:丽娜姐超市,重试,ribbon会自动的帮你基于某种规则如(单轮询,随机链接),

2、ribbon能干嘛

将用户的请求平均分配到,多个服务上,从而达到系统的HA

3、常见的负载均衡软件,nginx,lvs

4、dubbo,springcloud中均给我提供了负载均衡,cloud的负载均衡算法可以自定义

5、依赖:cloud-starter-ribbon,cloud-starter-eureka

springcloud面试题,spring cloud,java,微服务

6、原先Eureka是指定服务链接,现在是指定服务名字

7、LoadBalanced 开启负载均衡


七、负载均衡类型

1、RoundRobinRule 轮询

2、RandomRule随机

3、AvailabilityFilteringRule 先过滤掉故障服务,对剩下的服务进行轮询

4、RetryRule 先按照轮询获取服务,如果服务获取失败,则会在指定时间内进行重试

5、负载均匀用法 @Configuration @Bean 外加算法

自己写的不能与主应用程序统计目录,因为会被@ComponentScan扫描到

springcloud面试题,spring cloud,java,微服务

6、RibbonClient(name="服务名称", configuration = 负载均衡算法类名.class)

7、随机服务源码

springcloud面试题,spring cloud,java,微服务

八、FeignClient(注入服务名,让别的服务能获取到你的方法)

Component FeignClient(vlaue="服务名")

启动类:@EnableFeignClients 扫描FeignClient @COmponentScan让所有的注解都生效

springcloud面试题,spring cloud,java,微服务文章来源地址https://www.toymoban.com/news/detail-554577.html

到了这里,关于SpringCloud面试题(必看)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【springcloud 微服务】Spring Cloud Alibaba Nacos使用详解

    目录 一、前言 二、nacos介绍 2.1  什么是 Nacos 2.2 nacos 核心能力 2.2.1 服务发现和服务健康监测

    2024年01月22日
    浏览(51)
  • 【springcloud 微服务】Spring Cloud Alibaba整合Sentinel详解

    目录 一、前言 二、环境准备 2.1 部署sentinel管控台 2.1.1 官网下载sentinel的jar包 2.1.2 启动控制台

    2023年04月09日
    浏览(57)
  • SpringCloud面试题(必看)

    一、微服务架构四个核心问题? 1、服务很多,客户端怎么访问 2、这么多服务,服务之间如何通信 3、这么多服务,如何治理 4、服务挂了怎么办 二、微服务优缺点 优点 1、单一职责 2、每个服务足够内聚,足够下小,代码容易理解,这样能聚焦一个指定的业务功能或业务需

    2024年02月15日
    浏览(24)
  • 【springcloud 微服务】Spring Cloud Ribbon 负载均衡使用策略详解

    目录 一、前言 二、什么是Ribbon 2.1 ribbon简介 2.1.1  ribbon在负载均衡中的角色

    2024年02月02日
    浏览(64)
  • 【SpringCloud】11、Spring Cloud Gateway使用Sentinel实现服务限流

    1、关于 Sentinel Sentinel 是阿里巴巴开源的一个流量防卫防护组件,可以为微服务架构提供强大的流量防卫能力,包括流量控制、熔断降级等功能。Spring Cloud Gateway 与 Sentinel 结合,可以实现强大的限流功能。 Sentinel 具有以下特性: 丰富的应用场景:Sentinel 承接了阿里巴巴近

    2024年02月01日
    浏览(57)
  • 【springcloud微服务】Spring Cloud Alibaba 整合dubbo与openfeign

    dubbo与springcloud都可以单独作为微服务治理框架在生产中进行使用,但使用过springcloud的同学大概了解到,springcloud生态的相关组件这些年已经逐步停更,这就导致在服务架构演进过程中的迭代断层,以至于一些新的技术组件引入困难重重,于是在国内的市场上就有了升级版的

    2024年02月07日
    浏览(64)
  • Spring Cloud学习笔记【消息总线-SpringCloud Bus】

    Spring Cloud Bus是Spring Cloud生态系统中的一个组件,用于实现微服务架构中的消息总线。它利用了轻量级消息代理(如RabbitMQ或Kafka)作为通信中间件,实现了在分布式系统中的消息传递和事件广播。 Spring Cloud Bus旨在简化微服务架构中的配置管理和状态同步。它允许将配置更改或

    2024年02月09日
    浏览(74)
  • SpringBoot、SpringCloud、Spring Cloud Alibaba版本对照表(详细)

    由于 Spring Boot 3.0,Spring Boot 2.7~2.4 和 2.4 以下版本之间变化较大,目前企业级客户老项目相关 Spring Boot 版本仍停留在 Spring Boot 2.4 以下,为了同时满足存量用户和新用户不同需求,社区以 Spring Boot 3.0 和 2.4 分别为分界线,同时维护 2022.x、2021.x、2.2.x 三个分支迭代。如果不想跨

    2024年02月12日
    浏览(59)
  • SpringBoot、SpringCloud、Spring Cloud Alibaba版本对照表(详细准确)

    ❤️一切信息来自官网,准确详细❤️ Spring Cloud Version Spring Boot Version 2022.0.x aka Kilburn 3.0.x 2021.0.x aka Jubilee 2.6.x, 2.7.x (Starting with 2021.0.3) 2020.0.x aka Ilford 2.4.x, 2.5.x (Starting with 2020.0.3) Hoxton 2.2.x, 2.3.x (Starting with SR5) Greenwich 2.1.x Finchley 2.0.x Edgware 1.5.x Dalston 1.5.x Spring Cloud Dalston, Ed

    2024年02月13日
    浏览(53)
  • SpringCloud.04.熔断器Hystrix( Spring Cloud Alibaba 熔断(Sentinel))

    目录 熔断器概述 使用Sentinel工具 什么是Sentinel 微服务集成Sentinel 配置provider文件,在里面加入有关控制台的配置 实现一个接口的限流 基本概念 重要功能 Sentinel规则 流控规则 简单配置 配置流控模式 配置流控效果 降级规则 @SentinelResource的使用 Feign整合Sentinel 由于Hystrix已经停

    2024年01月19日
    浏览(44)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包