85道Java微服务⾯试题整理(助⼒2020⾯试)微服务⾯试题
1、您对微服务有何了解?
2、微服务架构有哪些优势?
3。微服务有哪些特点?
4、设计微服务的最佳实践是什么?
5、微服务架构如何运作?
6、微服务架构的优缺点是什么?
7、单⽚,SOA 和微服务架构有什么区别?
8、在使⽤微服务架构时,您⾯临哪些挑战?
9、SOA 和微服务架构之间的主要区别是什么?
10、微服务有什么特点?
11、什么是领域驱动设计?
12、为什么需要域驱动设计(DDD)?
13、什么是⽆所不在的语⾔?
14、什么是凝聚⼒?
15、什么是耦合?
16、什么是 REST / RESTful 以及它的⽤途是什么?
17、你对 Spring Boot 有什么了解?
18、什么是 Spring 引导的执⾏器?
19、什么是 Spring Cloud?
20、Spring Cloud 解决了哪些问题?
21、在 Spring MVC 应⽤程序中使⽤ WebMvcTest 注释有什么⽤处?
22。你能否给出关于休息和微服务的要点?
23、什么是不同类型的微服务测试?
24、您对 Distributed Transaction 有何了解?
25、什么是 Idempotence 以及它在哪⾥使⽤?
26、什么是有界上下⽂?
27、什么是双因素⾝份验证?
28、双因素⾝份验证的凭据类型有哪些?
29、什么是客户证书?
30、PACT 在微服务架构中的⽤途是什么?
31、什么是 OAuth?
32、康威定律是什么?
33、合同测试你懂什么?
34、什么是端到端微服务测试?
35、Container 在微服务中的⽤途是什么?
36、什么是微服务架构中的 DRY?
37、什么是消费者驱动的合同(CDC)?
38、Web,RESTful API 在微服务中的作⽤是什么?
39、您对微服务架构中的语义监控有何了解?
40、我们如何进⾏跨功能测试?
41、我们如何在测试中消除⾮决定论?
42、Mock 或 Stub 有什么区别?
43、您对 Mike Cohn 的测试⾦字塔了解多少?
44、Docker 的⽬的是什么?
45、什么是⾦丝雀释放?
46、什么是持续集成(CI)?
47、什么是持续监测?
48、架构师在微服务架构中的⾓⾊是什么?
49、我们可以⽤微服务创建状态机吗?
50、什么是微服务中的反应性扩展?
1、您对微服务有何了解?
微服务,⼜称微服务架构,是⼀种架构风格,它将应⽤程序构建为以业务领域为模型的⼩型⾃治服务集合。
通俗地说,你必须看到蜜蜂如何通过对齐六⾓形蜡细胞来构建它们的蜂窝状物。他们最初从使⽤各种材料的⼩部分开始,并继续从中构建⼀个⼤型蜂箱。这些细胞形成图案,产⽣坚固的结构,将蜂窝的特定
部分固定在⼀起。这⾥,每个细胞独⽴于另⼀个细胞,但它也与其他细胞相关。这意味着对⼀个细胞的损害不会损害其他细胞,因此,蜜蜂可以在不影响完整蜂箱的情况下重建这些细胞。
图 1:微服务的蜂窝表⽰ – 微服务访谈问题
请参考上图。这⾥,每个六边形形状代表单独的服务组件。与蜜蜂的⼯作类似,每个敏捷团队都使⽤可⽤的框架和所选的技术堆栈构建单独的服务组件。就像在蜂箱中⼀样,每个服务组件形成⼀个强⼤的微服务架构,以提供更好的可扩展性。此外,敏捷团队可以单独处理每个服务组件的问题,⽽对整个应⽤程序没有影响或影响最⼩。
2、微服务架构有哪些优势?
图 2:微服务的优点 – 微服务访谈问题springmvc面试题五大框架
· 独⽴开发 – 所有微服务都可以根据各⾃的功能轻松开发
· 独⽴部署 – 基于其服务,可以在任何应⽤程序中单独部署它们
· 故障隔离 – 即使应⽤程序的⼀项服务不起作⽤,系统仍可继续运⾏
· 混合技术堆栈 – 可以使⽤不同的语⾔和技术来构建同⼀应⽤程序的不同服务
· 粒度缩放 – 单个组件可根据需要进⾏缩放,⽆需将所有组件缩放在⼀起
3、微服务有哪些特点?
图 3:微服务的特点 – 微服务访谈问题
· 解耦 – 系统内的服务很⼤程度上是分离的。因此,整个应⽤程序可以轻松构建,更改和扩展
· 组件化 – 微服务被视为可以轻松更换和升级的独⽴组件
· 业务能⼒ – 微服务⾮常简单,专注于单⼀功能
· ⾃治 – 开发⼈员和团队可以彼此独⽴⼯作,从⽽提⾼速度
· 持续交付 – 通过软件创建,测试和批准的系统⾃动化,允许频繁发布软件
· 责任 – 微服务不关注应⽤程序作为项⽬。相反,他们将应⽤程序视为他们负责的产品
· 分散治理 – 重点是使⽤正确的⼯具来做正确的⼯作。这意味着没有标准化模式或任何技术模式。开发⼈员可以⾃由选择最有⽤的⼯具来解决他们的问题
· 敏捷 – 微服务⽀持敏捷开发。任何新功能都可以快速开发并再次丢弃
4、设计微服务的最佳实践是什么?
以下是设计微服务的最佳实践:
图 4:设计微服务的最佳实践 – 微服务访谈问题
5、微服务架构如何运作?
微服务架构具有以下组件:
图 5:微服务架构 – 微服务⾯试问题
·
客户端 – 来⾃不同设备的不同⽤户发送请求。
· ⾝份提供商 – 验证⽤户或客户⾝份并颁发安全令牌。
· API ⽹关 – 处理客户端请求。
· 静态内容 – 容纳系统的所有内容。
· 管理 – 在节点上平衡服务并识别故障。
· 服务发现 – 查微服务之间通信路径的指南。
· 内容交付⽹络 – 代理服务器及其数据中⼼的分布式⽹络。
· 远程服务 – 启⽤驻留在 IT 设备⽹络上的远程访问信息。
6、微服务架构的优缺点是什么?
7、单⽚,SOA 和微服务架构有什么区别?
图 6:单⽚ SOA 和微服务之间的⽐较 – 微服务访谈问题
· 单⽚架构类似于⼤容器,其中应⽤程序的所有软件组件组装在⼀起并紧密封装。
· ⼀个⾯向服务的架构是⼀种相互通信服务的集合。通信可以涉及简单的数据传递,也可以涉及两个或多个协调某些活动的服务。· 微服务架构是⼀种架构风格,它将应⽤程序构建为以业务域为模型的⼩型⾃治服务集合。
8、在使⽤微服务架构时,您⾯临哪些挑战?
开发⼀些较⼩的微服务听起来很容易,但开发它们时经常遇到的挑战如下。
· ⾃动化组件:难以⾃动化,因为有许多较⼩的组件。因此,对于每个组件,我们必须遵循 Build,Deploy 和 Monitor 的各个阶段。· 易感性:将⼤量组件维护在⼀起变得难以部署,维护,监控和识别问题。它需要在所有组件周围具有很好的感知能⼒。
· 配置管理:有时在各种环境中维护组件的配置变得困难。
· 调试:很难到错误的每⼀项服务。维护集中式⽇志记录和仪表板以调试问题⾄关重要。
9、SOA 和微服务架构之间的主要区别是什么?
SOA 和微服务之间的主要区别如下:
10、微服务有什么特点?
您可以列出微服务的特征,如下所⽰:
图 7:微服务的特征 – 微服务访谈问题
11、什么是领域驱动设计?
图 8: DDD 原理 – 微服务⾯试问题
12、为什么需要域驱动设计(DDD)?
图 9:我们需要 DDD 的因素 – 微服务⾯试问题
13、什么是⽆所不在的语⾔?
如果您必须定义泛在语⾔(UL),那么它是特定域的开发⼈员和⽤户使⽤的通⽤语⾔,通过该语⾔可以轻松解释域。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。