好文档 - 专业文书写作范文服务资料分享网站

微服务面试问答集锦

天下 分享 时间: 加入收藏 我要投稿 点赞

微服务常见的知识点

springboot和springcloud之间的关系

1、springboot是一套成熟的开发规范,通过maven等实现组件化以达到快速开发快速整合的目的;

2、springcloud是以springboot为基础,拥有更强大生态的分布式应用开发框架;

Springcloud微服务处理请求流程

首先请求先到达web容器在通过IO转给gateway,gateway通过请求地址匹配服务路由,匹配成功后由Gateway web handler重定向到路由所指向的服务对应的handler,代理服务收到请求后返回处理结果;

Springcloud服务降级和熔断的区别

服务熔断:当服务提供者出现异常或者访问拥堵的情况时,服务消费者不再继续调用服务提供方直接返回,如果服务提供方恢复后调用方会继续访问;原理就是当发起远程调用的时候断路器会监视整个调用过程,如果调用时间过长这个时候断路器会中断调用快速失败,目的是为了保护其他服务;

服务降级:当服务提供者不可用或者响应时间过长,服务调用方直接走本地逻辑避免出现调用方不可用的情况。

Zookeeper和eureka的区别

首先来说一下eureka和zookeeper作为注册中心的共同点,作为注册中心他们都是作为服务治理的,不同的是在围绕分布式系统三个重要指标CAP来说,eureka确保AP而zookeeper确保CP,他们都会存储和下发服务列表给client;除了client主动拉去服务列表之外,当server注册中心中所注册的服务有变化时还会主动通知到各个服务;

Springcloud和dubbo区别和优缺点

Springcloud 服务间调用方式是Rest Api,参数传递还是基于json类似的对象传输效率较低;灵活性更强不需要上下游之间的服务实现强依赖;

Dubbo服务间调用方式是基于TCP的传输协议配合hession序列化完成的远程调用,从速度上来讲Dubbo效率更高;

分布式事务常见的实现方式

在阐述分布式事务之前我们需要先回顾一下本地事务的特点原子性,一致性,隔离性,持久性; 2PC:发起事务后由协调者向各个服务发送准备提交指令;事务client返回准备完成或准备失败;协调者收到返回消息后,都准备成功发送提交指令;都失败或者部分失败发送回滚指令;

3PC:分为三个阶段准备提交、预提交、提交;相较于2PC增加了预提交阶段

TCC:;分为两个步骤,先提交如果成功后提交事务,失败则回滚,弊端就是代码侵入性太大,因为每个逻辑的确认提交和取消回滚都是不一样的,所以代码量相当大并且不移维护;

消息事务:消息事务是最终一致性的,发起事务后本地处理完成向消息中间介预发送消息,这个时候消费者并不能消费消息;所有逻辑都处理完成后在发送消息然后提交事务;

微服务面试问答集锦

微服务常见的知识点springboot和springcloud之间的关系1、springboot是一套成熟的开发规范,通过maven等实现组件化以达到快速开发快速整合的目的;2、springcloud是以springboot为基础,拥有更强大生态的分布式应用开发框架;Springcloud微服务处理请求流程首先请
推荐度:
点击下载文档文档为doc格式
11awe5aw642b61z97l7x8uhsm07tmu01726
领取福利

微信扫码领取福利

微信扫码分享