微服务面试题

微服务面试题

1.什么是微服务?(提出者马丁福勒)

  • 微服务架构是一种架构模式或者说是一种架构风格,它提供将单一应用程序划分成一组小的服务.

    每个服务运行在其独立的自己的进程中 ,服务之间互相协调、配合,为用户提供最终价值.
    
  • 服务之间采用轻量级的通信机制互相沟通(通常是基于HTTP的RESTful API).

    dubbo是rpc调用,微服务是restful风格
    
  • 技术维度的理解:

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

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

  • Rest风格通讯

3.SpringCloud和Dubbo有哪些区别?

  • !
  • !

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

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

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

  • 微服务的优缺点:
    • 优点:
    每个服务足够内聚,足够小,代码容易理解这样能聚焦一个指定的业务功能或业务需求.
    开发简单、开发效率提高,一个服务可能就是专一的只干一件事.
    微服务能够被小团队单独开发,2-5人开发人员.
    微服务是松耦合的,是有功能意义的服务,无论是在开发阶段还是部署阶段都是独立的.
    微服务能使用不同的语言开发.
    
    • 缺点:
    开发人员要处理分布式系统的复杂性.
    多服务运维难度,随着服务的增加,运维的压力也在增大.
    系统部署依赖.
    服务间通信成本.
    数据一致性.
    系统集成测试.
    性能监控.
    

7.你所知道的微服务技术栈有哪些,列举一二

微服务技术栈:多种技术的集合体

8.Eureka和Zookeeper都可以提供服务注册与发现的功能,请说说两个的区别

  • !
posted @ 2019-07-24 22:32  startfork  阅读(4093)  评论(0编辑  收藏  举报