SpringCloud面试题大全

本文详细介绍了SpringCloud的相关面试题,包括微服务与分布式、远程调用方式、RPC概念、SpringBoot与SpringCloud的关系、SpringCloud组件如Gateway的功能、Nacos作为注册中心和配置中心的用途、Sentinel的流控策略、Seata解决分布式事务问题,以及Spring Cloud Netflix的组件如Eureka的高可用性。同时,文章还讨论了分布式事务、服务降级、熔断等概念,为面试提供了全面的知识准备。
摘要由CSDN通过智能技术生成

@SpringCloud

SpringCloud

1.说说微服务、分布式、垂直架构的区别
微服务就是把功能模块分为很多子模块,每个子模块可以单独运行(除开分布式),每个子模块既可以作为服务提供者,也可以作为服务消费者;如果不存在模块间的依赖调用关系,某个模块宕机了,并不影响其他模块的运行;如果有依赖关系,可能会出现雪崩。而单体架构就是所有功能放在一个模块中,某个功能出现问题就会导致整合项目架构无法启动,出现宕机的情况

分布式与微服务的区别:分布式一般是基于RPC的远程调用服务,可以理解为服务提供者暴露的service层,微服务更加灵活,一般基于http通信的,可以理解为服务提供者暴露的controller层

2.远程调用服务的方式有哪些?分别说明
常见的远程调用方式有以下几种:

  1. RPC:Remote Produce Call远程过程调用,类似的还有RMI(Remote Method Invocation,远程方法调用)。自定义数据格式,基于原生TCP通信,速度快,效率高。早期的webservice,现在热门的dubbo,都是RPC的典型

  2. Http:http其实是一种网络传输协议,基于TCP,规定了数据传输的格式。现在客户端浏览器与服务端通信基本都是采用Http协议。也可以用来进行远程服务调用。缺点是消息封装臃肿。现在热门的Rest风格,就可以通过http协议来实现。

3.什么是RPC
RPC,即 Remote Procedure Call(远程过程调用),是一个计算机通信协议。 该协议允许运行于一台计算机的程序调用另一台计算机的子程序,而程序员无需额外地为这个交互作用编程。

说得通俗一点就是:A计算机提供一个服务,B计算机可以像调用本地服务那样调用A计算机的服务。

4.远程调用服务过程中的序列化如何实现
在这里插入图片描述
5.SpringCloud和SpringBoot的关系?
Spring Boot 是 Spring 的一套快速配置脚手架,可以基于Spring Boot 快速开发单个微服务,Spring Cloud是一个基于Spring Boot实现的云应用开发工具;
Spring Boot可以离开Spring Cloud独立使用开发项目,但是Spring Cloud离不开Spring Boot,属于依赖的关系。

6.Sprinfcloud组件有哪些
在这里插入图片描述
7.SpringCloud Gateway是什么?
网关:用来统一接收访问请求鉴权后再转发给各个微服务
1.统一了微服务的访问入口,减少了微服务受攻击的面积
2.统一了跨域的配置
3.统一了日志的记录方便监控
4.统一了鉴权的配置
5.限流控制(令牌桶算法)

8.SpringCloud Gateway路由组成分别是?

  • Route:路由网关的基本构建块。它由ID,目的URI,断言(Predicate)集合和过滤器(filter)集合组成。如果断言聚合为真,则匹配该路由。

9.网关与过滤器有什么区别?
网关是对所有服务的请求进行分析过滤,过滤器是对单个服务而言

10.为什么我们选择GateWay?
1.netflix不靠谱,迟迟不发布

因为Zuul1.0已经进入了维护阶段,而且Gateway是SpringCloud团队研发的,是亲儿子产品,值得信赖。而且很多功能Zuul都没有用起来也非常的简单便捷。
Gateway是基于异步非阻塞模型上进行开发的࿰

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值