尚硅谷SpringCloud的面试题总结

1.什么是微服务?

答:微服务化的核心就是将传统的一站式应用,根据业务拆分成一个一个的服务,彻底的去除耦合,每个微服务提供单个业务功能的服务,一个服务只做一件事情,从技术的角度看就是一种小而独立的处理过程,类似于进程的概念,能够自行的单独启动和销毁,拥有自己独立的数据库。

2.微服务之间是如何独立通讯的?

答:微服务之间的通信机制

spring cloud:它是使用了http的rest方式来做到独立通信的。

dubbo:它是使用了RPC远程调用的方式来实现独立通信。

3.SpringCloud和Dubbo有哪些区别?

答:区别如下

  • 调用方式:Dubbo是使用了RPC远程调用的方式,SpringCloud是使用了基于HTTP的rest方式进行调用;
  • 社区活跃度:SpringCloud相对与Dubbo而言活跃度更加的高;
  • 完整性与集成:SpringCloud就像是一个品牌机,它的各种组件功能都是属于spring家族的,有很好的集成作用;Dubbo就像是一个组装机,选择自由度高,但是很难保证它的稳定性;
  • 社区支持与更新力度:Dubbo停更5年左右,17年才重启的,对技术发展的新需求需要开发者自己扩展升级;SpringCloud是提供了一站式的服务,开发新需求也更加的方便;

4.SpringBoot和SpringCloud,请你谈谈对他们的理解?

答:SpringBoot专注与快速,方便的开发单个微服务个体,SpringCloud是分布式微服务架构下的一站式解决方案,是各个微服务架构落地技术的集合体,是关注于全局的服务治理框架;SpringBoot可以离开SpringCloud独立使用开发项目,但是SpringCloud离不开SpringBoot,属于依赖的关系。

5.什么是服务熔断?什么是服务降级?

答:服务熔断:就是如果某个目标服务调用满或者有大量超时,此时就熔断该服务的调用,对于后续调用请求,不再调用该目标服务,直接返回,快速释放资源;如果目标服务情况好转则恢复调用。

服务降级:主要就是系统的整体资源快不够用了,忍痛先将某些服务关掉,待度过难关的时候再次开启起来。

6.微服务的优缺点分别是什么?说下你在项目中碰到的微服务难题?

答:微服务优点

  • 开发简单,开发的效率提高;一个服务可以专一的只做一件事情;
  • 微服务只是业务逻辑的代码,不会和HTML,CSS或其他界面组件混合;
  • 每个微服务都有自己的存储能力,可以有自己的数据库,也可以有统一的数据库;
  • 微服务是松耦合的,是有功能意义的服务,无论是在开发阶段还是部署阶段都是独立的;
  • 每个服务都足够小,足够内聚,代码容易理解;

       微服务缺点

  • 开发人员要处理分布式系统的复杂性;
  • 多服务的运维难度,随着服务的增加,运维的压力就在增大;
  • 服务间的通信成本就比较高;
  • 系统的部署依赖比较复杂;

7.你说知道的微服务技术栈有哪些?请举例一二

答:微服务技术栈就是多种技术的集合体,下面用图的方式展现出来;

8.eureka和zookeeper都可以提供服务注册和发现的功能,请你说说两个的区别?

答:首先我们得了解一下著名的CAP理论,C是Consistency(强一致性),A是Availability(可用性),P是Partition tolerance(分区容错性);然而一个分布式系统不可能同时满足C,A和P三者,由于分区容错性P是分布式系统中一定需要保证的,因此我们只能在A和C之间来进行权衡,此时就有eureka和zookeeper的区别了。

Zookeeper保证的是CP:

当向服务中心查询服务列表时,我们可以容忍注册服务中心返回的几分钟前的注册信息,但是不能容忍服务直接挂掉不可用;也就是说,服务注册功能对于可用性的要求要高于一致性;但是zookeeper会出现这种情况,在master结点出现网络故障的时候会失去与其它结点的联系,此刻其它结点就会重新选取一个leader结点,但是选取leader结点的时间过长,在选取的期间zk集群是不可用的,这样长时间的选取leader结点导致注册服务长期不可使用,这是不能容忍的。

Eureka则是AP:

eureka明白了zookeeper的缺点,因此在设计时就优先保证可用性;eureka各个结点都是平等的,几个结点挂掉不会影响其它结点的工作,剩余的结点依旧可以提供服务注册与发现的功能。因此,eureka可以很好的应对因网络故障导致部分结点失去联系的情况,不会像zookeeper那样因网络故障导致整个注册服务瘫痪。

发布了42 篇原创文章 · 获赞 6 · 访问量 2951

猜你喜欢

转载自blog.csdn.net/qq_44666176/article/details/103742951