SpringCloud微服务面试必答题目大全
需积分: 0 3 浏览量
更新于2024-08-04
收藏 1.82MB PDF 举报
"这篇文章收集了27个关于SpringCloud微服务的面试问题,涵盖了SpringCloud Netflix、SpringCloud Alibaba、Nacos、Eureka、Feign、Seata、Gateway和Zuul等多个关键组件,旨在帮助面试者准备微服务相关的技术面试。"
SpringCloud微服务面试题详解:
1. **SpringCloudNetflix和SpringCloudAlibaba组件**:
- SpringCloud Netflix 包括Eureka(服务发现)、Zuul(API网关)、Hystrix(断路器)、 Ribbon(客户端负载均衡器)等组件。
- SpringCloud Alibaba 提供了Nacos(服务发现与配置管理)、Sentinel(流量控制、熔断降级)、Seata(分布式事务解决方案)等组件。
2. **Nacos是CP还是AP?**
- Nacos 是一个同时支持CP(Consistency一致性)和AP(Availability可用性)的分布式服务治理平台,具体使用哪种模式取决于具体场景和配置。
3. **Nacos作为注册中心选择CP还是AP?**
- 如果对数据一致性要求较高,应选择CP模式;如果更注重服务的可用性,可选择AP模式。
4. **Nacos如何实现就近访问?**
- 通常通过负载均衡策略,如轮询、随机或权重分配等方式,将请求分发到最近的服务实例上。
5. **Nacos底层负载均衡原理**
- Nacos 内置了基于Netty的RPC框架,可以实现基于IP和端口的负载均衡策略。
6-7. **Nacos1.x和2.x注册中心架构流程**
- 这两部分涉及Nacos的注册、发现和服务同步过程,具体细节包括客户端注册、心跳检测、服务列表同步等。
8. **Nacos中的Distro协议**
- Distro协议是Nacos用于实现分布式配置和服务发现的数据同步协议。
9. **Eureka注册中心原理**
- Eureka 采用服务心跳机制保持服务状态,并通过定期同步来确保服务列表的准确性。
10. **Eureka自我保护机制**
- 当网络异常导致大量服务无法正常心跳时,Eureka会进入自我保护模式,防止因网络波动导致服务剔除。
11. **Eureka和Nacos对比**
- 对比点可能包括:性能、稳定性、功能特性、社区支持和生态集成等。
12. **Nacos配置中心长轮询机制**
- 长轮询允许客户端保持连接打开,直到有新的配置更新时才返回,提高了配置更新的实时性。
13. **Nacos配置加载优先级**
- 配置加载的优先级通常为:应用内的配置 > Spring Cloud Bus推送的配置 > Nacos配置中心的配置。
14. **Nacos配置中心宕机会影响服务吗?**
- 如果服务依赖于Nacos的动态配置,宕机可能会导致服务获取不到最新的配置,影响服务运行。
15. **配置中心技术选型**
- 考虑因素包括:性能、稳定性、易用性、社区支持、扩展性等。
16. **Feign第一次调用耗时较长原因**
- 可能是因为初始化、接口解析、连接建立等开销,可以通过缓存接口元数据和预热等方式优化。
17-18. **Feign认证传递和底层HTTP库**
- Feign通过拦截器实现认证信息传递;默认使用HttpURLConnection,可替换为其他库如OkHttp以优化性能。
19. **2PC(两阶段提交)和3PC(三阶段提交)流程及优缺点**
- 2PC主要优点是简单,缺点是可能导致阻塞和单点故障。
- 3PC通过预提交阶段缓解2PC的问题,但增加了复杂性,且仍可能存在阻塞风险。
20-21. **Seata支持的事务模式**
- Seata 支持AT(Automatic Transaction)、TCC(Try-Confirm-Cancel)和Saga(长事务)等事务模式。
22. **Seata中xid全局传递**
- Seata通过在请求链路中传播分布式事务ID(xid)来跟踪整个分布式事务。
23-24. **Gateway核心概念与服务平滑迁移**
- Gateway 作为API网关,处理路由、过滤器等功能;实现服务平滑迁移可能涉及服务发现、健康检查和路由策略调整。
25. **Zuul架构及线程安全**
- Zuul 采用过滤器链模型,每个请求都由独立线程处理,需注意并发安全问题,例如在过滤器中使用线程安全的数据结构。
以上是对SpringCloud微服务面试题的详细解答,涵盖了各个组件的关键知识点,可以帮助面试者深入了解和准备相关面试。
2023-06-06 上传
2023-07-23 上传
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
点击了解资源详情
程序员白城
- 粉丝: 173
- 资源: 88
最新资源
- 琴玉
- contiguous-list.zip_数据结构_Visual_C++_
- React堆:用于R的交互式笔记本
- simplifiedimmersion
- mf-chat:MFCalçados-聊天
- 棒棒糖
- src.zip_android开发_Java_
- UoM Podcast: Play Button Remover-crx插件
- KoNLP:韩国NLP的R包
- Screen Capture by Kami-crx插件
- CSCI5607:CSCI 5607 2021Spring的项目回购
- matlab实现bsc代码-Numerical-Methods-Transient-Conduction-Problem:四材料截面棒的热研究
- Sir-Tim-Berners-Lee-2
- vue+node+webpack练习项目.zip
- ProjetoSistemaGachaV2.0:新版“ Gacha”风格的游戏原型,现在具有使用Python 3制作的API
- matlab实现bsc代码-BSc.-Eng.-Mechatronics-Undergraduate-Thesis:理学士。(英文)机电一体化