常见面试题

1.什么是微服务,微服务架构

微服务的核心就是将传统的一站式应用,根据业务拆分成一个一个的服务,彻底的去耦合,每个微服务提供单一的业务功能,一个服务只做一件事,从技术角度就是一种小而独立的处理过程,类是一个进程,能单独的启动或销毁,拥有自己独立的数据库,强调服务的大小,关注的是每一个点,类是IDEA中的一个Moudel
微服务架构是一种架构的思想,提倡将单一应用程序划分成一组小的服务,服务之间互相协调,互相配合,为用户提供最终价值,每个服务都独立运行,通过轻量级的通讯机制互相协作,对集体的服务去选择

2.微服务之间是怎样如何独立通讯 RPC通讯 http协议

3.SpringCloud和Dubbo有哪些区别

4.springBoot和springCloud请谈对他们的理解

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

6.微服务的优缺点分别是什么?说下你在项目开发中遇到的坑
微服务的优缺点

优点: 单一职责原则
     服务高内聚 足够小 代码容易理解,能聚焦指定的业务功能
     开发简单 使用注解即可 效率高,一个服务只针对一个业务模块
     松耦合,各个模块都独立
     可以使用不同的语言开发
     微服务只是业务逻辑代码,不会和html css混合
     每个为服务都有自己的储存能力,可以有自己的数据库,也可以统一数据库
缺点: 开发人员要处理分布式系统的复杂性
     多服务运维难
     系统部署复杂
     服务间通讯成本高
     数据一致性会延迟

你所知道的为服务技术栈有哪些
image.png
image.png

7.SpringCloud和SpringBoot关系
springboot专注于快速方便的开发单个个体微服务
springCloud是专注全局的微服务协调治理架构,将单体微服务整合管理,为各个服务之间通过,配置管理,服务发现,断路器,路由,微代理,事件总站,全局锁等集成服务
springboot可以离开springcloud,但springcloud依赖springboot
springboot专注快速方便开发单体服务,springcloud关注全局的服务治理框架

7.eureka和zookeeper都可以通过服务与发现的功能,请说说区别

微服务架构的核心问题
服务很多,客户该怎样去访问
服务之间如何通讯
服务如何治理
服务挂了怎么办

image.png
image.png
image.png
image.png
传统网站的结构
image.png

Dubbo和SpringCloud对比
image.png
区别:
springCloud抛弃了Dubbo的RPC通讯,采用http的Rest方式,降低了性能,避免了PRC带来的问题,Rest比RPC灵活,提供了调用方法,只要引入依赖,就可以快速使用

springCloud的功能比Dubbo更强大,覆盖面更广,可以完美的契合spring所有产品
Duboo主要是定位RPC调用,在兼容性上和springCloud有很大的差距

SpringCloud的维护更新和市场影响比Dubbo大,Dubbo停更5年,在维护更新上有差距

image.png
image.png
image.png
SpringCloud的提供者和消费者
SpringCloud的消费者调用:restTemplate
image.png


泽诺熙
25 声望2 粉丝