互联网Java工程师面试题·微服务篇·第一弹

目录

​编辑

1、您对微服务有何了解?

2、微服务架构有哪些优势?

3、微服务有哪些特点?

4、设计微服务的最佳实践是什么?

5、微服务架构如何运作?

6、微服务架构的优缺点是什么?

7、单片,SOA 和微服务架构有什么区别?

8、在使用微服务架构时,您面临哪些挑战?

9、SOA 和微服务架构之间的主要区别是什么?

10、微服务有什么特点?

11、什么是领域驱动设计?

12、为什么需要域驱动设计(DDD)?

13、什么是无所不在的语言?

14、什么是凝聚力?

15、什么是耦合?

16、什么是 REST / RESTful 以及它的用途是什么?

17、你对 Spring Boot 有什么了解?


1、您对微服务有何了解?

        微服务,又称微服务 架构,是一种架构风格,它将应用程序构建为以业务领域为模型的小型自治服务集合 。

        通俗地说,你必须看到蜜蜂如何通过对齐六角形蜡细胞来构建它们的蜂窝状物。他们最初从使用各种材料的小部分开始,并继续从中构建一个大型蜂箱。这些细胞形成图案,产生坚固的结构,将蜂窝的特定部分固定在一起。这里,每个细胞独立于另一个细胞,但它也与其他细胞相关。这意味着对一个细胞的损害不会损害其他细胞,因此,蜜蜂可以在不影响完整蜂箱的情况下重建这些细胞。

图 1:微服务的蜂窝表示 – 微服务访谈问题

        请参考上图。这里,每个六边形形状代表单独的服务组件。与蜜蜂的工作类似,每个敏捷团队都使用可用的框架和所选的技术堆栈构建单独的服务组件。就像在蜂箱中一样,每个服务组件形成一个强大的微服务架构,以提供更好的可扩展性。此外,敏捷团队可以单独处理每个服务组件的问题,而对整个应用程序没有影响或影响最小。


2、微服务架构有哪些优势?

图 2:微服务的 优点 – 微服务访谈问题

独立开发 – 所有微服务都可以根据各自的功能轻松开发

独立部署 – 基于其服务,可以在任何应用程序中单独部署它们

故障隔离 – 即使应用程序的一项服务不起作用,系统仍可继续运行

混合技术堆栈 – 可以使用不同的语言和技术来构建同一应用程序的不同服务

粒度缩放 – 单个组件可根据需要进行缩放,无需将所有组件缩放在一起


3、微服务有哪些特点?

图 3:微服务的 特点 – 微服务访谈问题

解耦 – 系统内的服务很大程度上是分离的。因此,整个应用程序可以轻松构建,更改和扩展

组件化 – 微服务被视为可以轻松更换和升级的独立组件

业务能力 – 微服务非常简单,专注于单一功能

自治 – 开发人员和团队可以彼此独立工作,从而提高速度

持续交付 – 通过软件创建,测试和批准的系统自动化,允许频繁发布软件

责任 – 微服务不关注应用程序作为项目。相反,他们将应用程序视为他们负责的产品

分散治理 – 重点是使用正确的工具来做正确的工作。这意味着没有标准化模式或任何技术模式。开发人员可以自由选择最有用的工具来解决他们的问题

敏捷 – 微服务支持敏捷开发。任何新功能都可以快速开发并再次丢弃


4、设计微服务的最佳实践是什么?

以下是设计微服务的最佳实践:

图 4:设计微服务的最佳实践 – 微服务访谈问题


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

时光の尘

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值