当前位置:   article > 正文

2024年Java最新50道微服务经典面试题,想进大厂你必须弄懂(内附答案),宅家36天咸鱼翻身入职腾讯_java微服务面试

java微服务面试

最后

按照上面的过程,4个月的时间刚刚好。当然Java的体系是很庞大的,还有很多更高级的技能需要掌握,但不要着急,这些完全可以放到以后工作中边用别学。

学习编程就是一个由混沌到有序的过程,所以你在学习过程中,如果一时碰到理解不了的知识点,大可不必沮丧,更不要气馁,这都是正常的不能再正常的事情了,不过是“人同此心,心同此理”的暂时而已。

道路是曲折的,前途是光明的!”

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

难以保持交易安全

确保每项服务的安全性

艰难地跨越各种边界跟踪数据

多个服务是并行开发和部署的

难以在服务之间进行编码

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

50道微服务经典面试题,想进大厂你必须弄懂(内附答案)

图6: 单片SOA和微服务之间的比较 – 微服务访谈问题

  • 单片架构类似于大容器,其中应用程序的所有软件组件组装在一起并紧密封装。

  • 一个面向服务的架构是一种相互通信服务的集合。通信可以涉及简单的数据传递,也可以涉及两个或多个协调某些活动的服务。

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

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

开发一些较小的微服务听起来很容易,但开发它们时经常遇到的挑战如下。

  • 自动化组件:难以自动化,因为有许多较小的组件。因此,对于每个组件,我们必须遵循Build,Deploy和Monitor的各个阶段。

  • 易感性:将大量组件维护在一起变得难以部署,维护,监控和识别问题。它需要在所有组件周围具有很好的感知能力。

  • 配置管理:有时在各种环境中维护组件的配置变得困难。

  • 调试:很难找到错误的每一项服务。维护集中式日志记录和仪表板以调试问题至关重要。

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

SOA和微服务之间的主要区别如下:

SOA

微服务

遵循“ 尽可能多的共享 ”架构方法

遵循“ 尽可能少分享 ”的架构方法

重要性在于 业务功能 重用

重要性在于“ 有界背景 ” 的概念

他们有 共同的 治理 和标准

他们专注于 人们的 合作 和其他选择的自由

使用 企业服务总线(ESB) 进行通信

简单的消息系统

它们支持 多种消息协议

他们使用 轻量级协议 ,如 HTTP / REST 等。

多线程, 有更多的开销来处理I / O.

单线程 通常使用Event Loop功能进行非锁定I / O处理

最大化应用程序服务可重用性

专注于 解耦

传统的关系数据库 更常用

现代 关系数据库 更常用

系统的变化需要修改整体

系统的变化是创造一种新的服务

DevOps / Continuous Delivery正在变得流行,但还不是主流

专注于DevOps /持续交付

Q10。微服务有什么特点?

您可以列出微服务的特征,如下所示:

50道微服务经典面试题,想进大厂你必须弄懂(内附答案)

图7:微服务的特征 – 微服务访谈问题

Q11。什么是领域驱动设计?

50道微服务经典面试题,想进大厂你必须弄懂(内附答案)

图8: DDD原理 – 微服务面试问题

Q12。为什么需要域驱动设计(DDD)?

50道微服务经典面试题,想进大厂你必须弄懂(内附答案)

**图9:**我们需要DDD的因素 – 微服务面试问题

Q13。什么是无所不在的语言?

如果您必须定义泛在语言(UL),那么它是特定域的开发人员和用户使用的通用语言,通过该语言可以轻松解释域。

无处不在的语言必须非常清晰,以便它将所有团队成员放在同一页面上,并以机器可以理解的方式进行翻译。

Q14。什么是凝聚力?

模块内部元素所属的程度被认为是凝聚力

Q15。什么是耦合?

组件之间依赖关系强度的度量被认为是耦合。一个好的设计总是被认为具有高内聚力低耦合性

Q16。什么是REST / RESTful以及它的用途是什么?

Representational State Transfer(REST)/ RESTful Web服务是一种帮助计算机系统通过Internet进行通信的架构风格。这使得微服务更容易理解和实现。

微服务可以使用或不使用RESTful API实现,但使用RESTful API构建松散耦合的微服务总是更容易。

Q17。你对Spring Boot有什么了解?

事实上,随着新功能的增加,弹簧变得越来越复杂。如果必须启动新的spring项目,则必须添加构建路径或添加maven依赖项,配置应用程序服务器,添加spring配置。所以一切都必须从头开始。

Spring Boot是解决这个问题的方法。使用spring boot可以避免所有样板代码和配置。因此,基本上认为自己就好像你正在烘烤蛋糕一样,春天就像制作蛋糕所需的成分一样,弹簧靴就是你手中的完整蛋糕。

50道微服务经典面试题,想进大厂你必须弄懂(内附答案)

图10: Spring Boot的因素 – 微服务面试问题

Q18。什么是Spring引导的执行器?

Spring Boot执行程序提供了restful Web服务,以访问生产环境中运行应用程序的当前状态。在执行器的帮助下,您可以检查各种指标并监控您的应用程序。

Q19。什么是Spring Cloud?

根据Spring Cloud的官方网站,Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智能路由,领导选举,分布式会话,集群状态)。

Q20。Spring Cloud解决了哪些问题?

在使用Spring Boot开发分布式微服务时,我们面临的问题很少由Spring Cloud解决。

  • 与分布式系统相关的复杂性 – 包括网络问题,延迟开销,带宽问题,安全问题。

  • 处理服务发现的能力 – 服务发现允许集群中的进程和服务找到彼此并进行通信。

  • 解决冗余问题 – 冗余问题经常发生在分布式系统中。

  • 负载平衡 – 改进跨多个计算资源(例如计算机集群,网络链接,中央处理单元)的工作负载分布。

  • 减少性能问题 – 减少因各种操作开销导致的性能问题。

Q21。在Spring MVC应用程序中使用WebMvcTest注释有什么用处?

50道微服务经典面试题,想进大厂你必须弄懂(内附答案)

在测试目标只关注Spring MVC组件的情况下,WebMvcTest注释用于单元测试Spring MVC应用程序。在上面显示的快照中,我们只想启动ToTestController。执行此单元测试时,不会启动所有其他控制器和映射。

Q22。你能否给出关于休息和微服务的要点?

休息

虽然您可以通过多种方式实现微服务,但REST over HTTP是实现微服务的一种方式。REST还可用于其他应用程序,如Web应用程序,API设计和MVC应用程序,以提供业务数据。

微服务

微服务是一种体系结构,其中系统的所有组件都被放入单独的组件中,这些组件可以单独构建,部署和扩展。微服务的某些原则和最佳实践有助于构建弹性应用程序。

简而言之,您可以说REST是构建微服务的媒介。

Q23。什么是不同类型的微服务测试?

在使用微服务时,由于有多个微服务协同工作,测试变得非常复杂。因此,测试分为不同的级别。

  • 底层,我们有**面向技术的测试,**如单元测试和性能测试。这些是完全自动化的。

  • 中间层面,我们进行了诸如压力测试和可用性测试之类的探索性测试。

  • 顶层, 我们的 验收测试数量很少。这些验收测试有助于利益相关者理解和验证软件功能。

Q24。您对Distributed Transaction有何了解?

分布式事务是指单个事件导致两个或多个不能以原子方式提交的单独数据源的突变的任何情况。在微服务的世界中,它变得更加复杂,因为每个服务都是一个工作单元,并且大多数时候多个服务必须协同工作才能使业务成功。

Q25。什么是Idempotence以及它在哪里使用?

幂等性是能够以这样的方式做两次事情的特性,即最终结果将保持不变,即好像它只做了一次。

用法:在远程服务或数据源中使用 Idempotence,这样当它多次接收指令时,它只处理指令一次。

Q26。什么是有界上下文?

有界上下文是域驱动设计的核心模式。DDD战略设计部门的重点是处理大型模型和团队。DDD通过将大型模型划分为不同的有界上下文并明确其相互关系来处理大型模型。

Q27。什么是双因素身份验证?

双因素身份验证为帐户登录过程启用第二级身份验证。

50道微服务经典面试题,想进大厂你必须弄懂(内附答案)

图11: 双因素认证的表示 – 微服务访谈问题

因此,假设用户必须只输入用户名和密码,那么这被认为是单因素身份验证。

Q28。双因素身份验证的凭据类型有哪些?

这三种凭证是:

50道微服务经典面试题,想进大厂你必须弄懂(内附答案)

图12: 双因素认证的证书类型 – 微服务面试问题

Q29。什么是客户证书?

客户端系统用于向远程服务器发出经过身份验证的请求的一种数字证书称为客户端证书。客户端证书在许多相互认证设计中起着非常重要的作用,为请求者的身份提供了强有力的保证。

Q30。PACT在微服务架构中的用途是什么?

PACT是一个开源工具,允许测试服务提供者和消费者之间的交互,与合同隔离,从而提高微服务集成的可靠性。

微服务中的用法:

  • 用于在微服务中实现消费者驱动的合同。

  • 测试微服务的消费者和提供者之间的消费者驱动的合同。

查看即将到来的批次

Q31。什么是OAuth?

OAuth 代表开放授权协议。这允许通过在HTTP服务上启用客户端应用程序(例如第三方提供商Facebook,GitHub等)来访问资源所有者的资源。因此,您可以在不使用其凭据的情况下与另一个站点共享存储在一个站点上的资源。

Q32。康威定律是什么?

“任何设计系统的组织(广泛定义)都将产生一种设计,其结构是组织通信结构的副本。” – Mel Conway

50道微服务经典面试题,想进大厂你必须弄懂(内附答案)

图13: Conway定律的表示 – 微服务访谈问题

该法律基本上试图传达这样一个事实:为了使软件模块起作用,整个团队应该进行良好的沟通。因此,系统的结构反映了产生它的组织的社会边界。

Q33。合同测试你懂什么?

根据Martin Flower的说法,合同测试是在外部服务边界进行的测试,用于验证其是否符合消费服务预期的合同。

此外,合同测试不会深入测试服务的行为。更确切地说,它测试该服务调用的输入&输出包含所需的属性和所述响应延迟,吞吐量是允许的限度内。

Q34。什么是端到端微服务测试?

端到端测试验证了工作流中的每个流程都正常运行。这可确保系统作为一个整体协同工作并满足所有要求。

通俗地说,你可以说端到端测试是一种测试,在特定时期后测试所有东西。

50道微服务经典面试题,想进大厂你必须弄懂(内附答案)

**图14:**测试层次 – 微服务面试问题

Q35。Container在微服务中的用途是什么?

容器是管理基于微服务的应用程序以便单独开发和部署它们的好方法_。_您可以将微服务封装在容器映像及其依赖项中,然后可以使用它来滚动按需实例的微服务,而无需任何额外的工作。

50道微服务经典面试题,想进大厂你必须弄懂(内附答案)

图15: 容器的表示及其在微服务中的使用方式 – 微服务访谈问题

Q36。什么是微服务架构中的DRY?

DRY代表不要重复自己。它基本上促进了重用代码的概念。这导致开发和共享库,这反过来导致紧密耦合。

Q37。什么是消费者驱动的合同(CDC)?

这基本上是用于开发微服务的模式,以便它们可以被外部系统使用。当我们处理微服务时,有一个特定的提供者构建它,并且有一个或多个使用微服务的消费者。

通常,提供程序在XML文档中指定接口。但在消费者驱动的合同中,每个服务消费者都传达了提供商期望的接口。

Q38。 Web,RESTful API在微服务中的作用是什么?

微服务架构基于一个概念,其中所有服务应该能够彼此交互以构建业务功能。因此,要实现这一点,每个微服务必须具有接口。这使得Web API成为微服务的一个非常重要的推动者。RESTful API基于Web的开放网络原则,为构建微服务架构的各个组件之间的接口提供了最合理的模型。

Q39。您对微服务架构中的语义监控有何了解?

分享

这次面试我也做了一些总结,确实还有很多要学的东西。相关面试题也做了整理,可以分享给大家,了解一下面试真题,想进大厂的或者想跳槽的小伙伴不妨好好利用时间来学习。学习的脚步一定不能停止!

薪酬缩水,“裸辞”奋战25天三面美团,交叉面却被吊打,我太难了

Spring Cloud实战

薪酬缩水,“裸辞”奋战25天三面美团,交叉面却被吊打,我太难了

Spring Boot实战

薪酬缩水,“裸辞”奋战25天三面美团,交叉面却被吊打,我太难了

面试题整理(性能优化+微服务+并发编程+开源框架+分布式)

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

服务的一个非常重要的推动者。RESTful API基于Web的开放网络原则,为构建微服务架构的各个组件之间的接口提供了最合理的模型。

Q39。您对微服务架构中的语义监控有何了解?

分享

这次面试我也做了一些总结,确实还有很多要学的东西。相关面试题也做了整理,可以分享给大家,了解一下面试真题,想进大厂的或者想跳槽的小伙伴不妨好好利用时间来学习。学习的脚步一定不能停止!

[外链图片转存中…(img-pYWCKhmH-1714904820509)]

Spring Cloud实战

[外链图片转存中…(img-sf8ArUOm-1714904820510)]

Spring Boot实战

[外链图片转存中…(img-tBXMovVw-1714904820510)]

面试题整理(性能优化+微服务+并发编程+开源框架+分布式)

本文已被CODING开源项目:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】收录

需要这份系统化的资料的朋友,可以点击这里获取

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/羊村懒王/article/detail/622597
推荐阅读
相关标签
  

闽ICP备14008679号