国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

目錄
1. 什么是微服務(wù)?" >1. 什么是微服務(wù)?
首頁(yè) Java Java面試題 9道微服務(wù)面試題,你能回答上來(lái)幾個(gè)?

9道微服務(wù)面試題,你能回答上來(lái)幾個(gè)?

Aug 22, 2023 pm 03:46 PM
java面試題

如今,微服務(wù)是我們Java開(kāi)發(fā)者必備的技能之一了。不管你工作中是否真的是使用微服務(wù)架構(gòu),但是面試官肯定會(huì)問(wèn)你,所以田哥給你整理一份微服務(wù)面試題。

話(huà)不多說(shuō),我們直入主題。

1. 什么是微服務(wù)?

單個(gè)輕量級(jí)服務(wù)一般為一個(gè)單獨(dú)微服務(wù),微服務(wù)講究的是 專(zhuān)注某個(gè)功能的實(shí)現(xiàn),比如登錄系統(tǒng)只專(zhuān)注于用戶(hù)登錄方面功能的實(shí)現(xiàn),講究的是職責(zé)單一,開(kāi)箱即用,可以獨(dú)立運(yùn)行。微服務(wù)架構(gòu)系統(tǒng)是一個(gè)分布式的系統(tǒng),按照業(yè)務(wù)進(jìn)行劃分服務(wù)單元模塊,解決單個(gè)系統(tǒng)的不足,滿(mǎn)足越來(lái)越復(fù)雜的業(yè)務(wù)需求。

馬丁福勒(Martin Fowler):就目前而言,對(duì)于微服務(wù)業(yè)界并沒(méi)有一個(gè)統(tǒng)一的、標(biāo)準(zhǔn)的定義。但通常而言,微服務(wù)架構(gòu)是一種架構(gòu)模式或者說(shuō)是架構(gòu)風(fēng)格,它提倡將單一應(yīng)用程序劃分成一組小的服務(wù)。每個(gè)服務(wù)運(yùn)行在其獨(dú)立的自己的進(jìn)程中服務(wù)之間相互配合、相互協(xié)調(diào),為用戶(hù)提供最終價(jià)值。服務(wù)之間采用輕量級(jí)通信。每個(gè)服務(wù)都圍繞具體業(yè)務(wù)進(jìn)行構(gòu)建,并能夠獨(dú)立部署到生產(chǎn)環(huán)境等。另外應(yīng)盡量避免統(tǒng)一的、集中的服務(wù)管理機(jī)制。

通俗的來(lái)講:

微服務(wù)就是一個(gè)獨(dú)立的職責(zé)單一的服務(wù)應(yīng)用程序。在 intellij idea 工具里面就是用 maven 開(kāi)發(fā)的一個(gè)個(gè)獨(dú)立的 module,具體就是使用 springboot 開(kāi)發(fā)的一個(gè)小的模塊,處理單一專(zhuān)業(yè)的業(yè)務(wù)邏輯,一個(gè)模塊只做一個(gè)事情。

微服務(wù)強(qiáng)調(diào)的是服務(wù)大小,關(guān)注的是某一個(gè)點(diǎn),具體解決某一個(gè)問(wèn)題 / 落地對(duì)應(yīng)的一個(gè)服務(wù)應(yīng)用,可以看做是 idea 里面一個(gè) module。

比如你去醫(yī)院:你的牙齒不舒服,那么你就去牙科。你的頭疼,那么你就去腦科。一個(gè)個(gè)的科室,就是一個(gè)微服務(wù),一個(gè)功能就是一個(gè)服務(wù)。

2. 微服務(wù)之間如何獨(dú)立通訊的?

同步通信:dobbo 通過(guò)?RPC 遠(yuǎn)程過(guò)程調(diào)用、springcloud 通過(guò) REST 接口 json 調(diào)用?等。異步:消息隊(duì)列,如:RabbitMq、ActiveM、Kafka?等。

3.SpringCloud 和 Dubbo 有哪些區(qū)別?

  • 首先,他們都是分布式管理框架。

  • dubbo 是二進(jìn)制傳輸,占用帶寬會(huì)少一點(diǎn)。SpringCloud 是?http 傳輸,帶寬會(huì)多一點(diǎn),同時(shí)使用 http 協(xié)議一般會(huì)使用?JSON 報(bào)文,消耗會(huì)更大。

  • dubbo 開(kāi)發(fā)難度較大,所依賴(lài)的 jar 包有很多問(wèn)題大型工程無(wú)法解決。SpringCloud 對(duì)第三方的繼承可以一鍵式生成,天然集成。

  • SpringCloud 接口協(xié)議約定比較松散,需要強(qiáng)有力的行政措施來(lái)限制接口無(wú)序升級(jí)。

  • 最大的區(qū)別:?Spring Cloud 拋棄了 Dubbo 的 RPC 通信,采用的是基于 HTTP 的 REST 方式。

  • 嚴(yán)格來(lái)說(shuō),這兩種方式各有優(yōu)劣。雖然在一定程度上來(lái)說(shuō),后者犧牲了服務(wù)調(diào)用的性能,但也避免了上面提到的原生 RPC 帶來(lái)的問(wèn)題。而且 REST 相比 RPC 更為靈活,服務(wù)提供方和調(diào)用方的依賴(lài)只依靠一紙契約,不存在代碼級(jí)別的強(qiáng)依賴(lài),這在強(qiáng)調(diào)快速演化的微服務(wù)環(huán)境下,顯得更為合適。

9道微服務(wù)面試題,你能回答上來(lái)幾個(gè)?
SpringCloud 和 Dubbo.png

4.SpringBoot 和 SpringCloud 之間關(guān)系?

  • SpringBoot:專(zhuān)注于快速方便的開(kāi)發(fā)單個(gè)個(gè)體微服務(wù)(關(guān)注微觀);SpringCloud:關(guān)注全局的微服務(wù)協(xié)調(diào)治理框架,將 SpringBoot 開(kāi)發(fā)的一個(gè)個(gè)單體微服務(wù)組合并管理起來(lái)(關(guān)注宏觀);

  • SpringBoot 可以離開(kāi) SpringCloud 獨(dú)立使用,但是 SpringCloud 不可以離開(kāi) SpringBoot,屬于依賴(lài)關(guān)系。

5. 什么是熔斷?什么是服務(wù)降級(jí)?

  • 服務(wù)熔斷的作用類(lèi)似于我們家用的保險(xiǎn)絲,當(dāng)某服務(wù)出現(xiàn)不可用或響應(yīng)超時(shí)的情況時(shí),為了防止整個(gè)系統(tǒng)出現(xiàn)雪崩,暫時(shí)停止對(duì)該服務(wù)的調(diào)用。

  • 服務(wù)降級(jí)是從整個(gè)系統(tǒng)的負(fù)荷情況出發(fā)和考慮的,對(duì)某些負(fù)荷會(huì)比較高的情況,為了預(yù)防某些功能(業(yè)務(wù)場(chǎng)景)出現(xiàn)負(fù)荷過(guò)載或者響應(yīng)慢的情況,在其內(nèi)部暫時(shí)舍棄對(duì)一些非核心的接口和數(shù)據(jù)的請(qǐng)求,而直接返回一個(gè)提前準(zhǔn)備好的 fallback(退路)錯(cuò)誤處理信息。這樣,雖然提供的是一個(gè)有損的服務(wù),但卻保證了整個(gè)系統(tǒng)的穩(wěn)定性和可用性。

6. 微服務(wù)的優(yōu)缺點(diǎn)是什么?說(shuō)下你在項(xiàng)目中碰到的坑。

  • 優(yōu)點(diǎn):松耦合,聚焦單一業(yè)務(wù)功能,無(wú)關(guān)開(kāi)發(fā)語(yǔ)言,團(tuán)隊(duì)規(guī)模降低。在開(kāi)發(fā)中,不需要了解多有業(yè)務(wù),只專(zhuān)注于當(dāng)前功能,便利集中,功能小而精。微服務(wù)一個(gè)功能受損,對(duì)其他功能影響并不是太大,可以快速定位問(wèn)題。微服務(wù)只專(zhuān)注于當(dāng)前業(yè)務(wù)邏輯代碼,不會(huì)和 html、css 或其他界面進(jìn)行混合??梢造`活搭配技術(shù),獨(dú)立性比較舒服。

  • 缺點(diǎn):隨著服務(wù)數(shù)量增加,管理復(fù)雜,部署復(fù)雜,服務(wù)器需要增多,服務(wù)通信和調(diào)用壓力增大,運(yùn)維工程師壓力增大,人力資源增多,系統(tǒng)依賴(lài)增強(qiáng),數(shù)據(jù)一致性,性能監(jiān)控。

7.eureka 和 zookeeper有什么區(qū)別?

zookeeper 是 CP 原則,強(qiáng)一致性和分區(qū)容錯(cuò)性。eureka 是 AP 原則?可用性和分區(qū)容錯(cuò)性。zookeeper 當(dāng)主節(jié)點(diǎn)故障時(shí),zk 會(huì)在剩余節(jié)點(diǎn)重新選擇主節(jié)點(diǎn),耗時(shí)過(guò)長(zhǎng),雖然最終能夠恢復(fù),但是選取主節(jié)點(diǎn)期間會(huì)導(dǎo)致服務(wù)不可用,這是不能容忍的。eureka 各個(gè)節(jié)點(diǎn)是平等的,一個(gè)節(jié)點(diǎn)掛掉,其他節(jié)點(diǎn)仍會(huì)正常保證服務(wù)。

8. 你所知道微服務(wù)的技術(shù)棧有哪些?列舉一二。

微服務(wù)條目 落地技術(shù)
服務(wù)開(kāi)發(fā) SpringBoot、Spring、SpringMVC
服務(wù)配置與管理 Netfix 公司的 Archaius、阿里的 Dlamond 等
服務(wù)注冊(cè)與發(fā)現(xiàn) Eurka、Consul、Zookeeper 等
服務(wù)調(diào)用 Rest(服務(wù)通信)、RPC(Dubbo)、GRpc
服務(wù)熔斷器 Hystrix、Envoy 等
負(fù)載均衡 Nginx、Ribbon 等
服務(wù)接口調(diào)用(客戶(hù)端簡(jiǎn)化工具) Fegin 等
消息隊(duì)列 Kafka、RabbitMQ、ActiveMQ 等
服務(wù)配置中心管理 SpringCloudConfig、Chef 等
服務(wù)路由(API 網(wǎng)關(guān)) Zuul 等
服務(wù)監(jiān)控 Zabbix,Nagios,Metrics,Spectator 等
全鏈路追蹤 Zipkin,Brave,Dapper 等
服務(wù)部署 Docker,OpenStack,Kubernetes 等
數(shù)據(jù)流操作開(kāi)發(fā)包 SpringCloud Stream(封裝與 Redis,Rabbit,kafka 等發(fā)送接收消息)
事件消息總線(xiàn) Spring Cloud Bus

9. 什么是微服務(wù)架構(gòu)?

在前面你理解什么是微服務(wù),那么對(duì)于微服務(wù)架構(gòu)基本上就已經(jīng)理解了。

微服務(wù)架構(gòu) 就是 對(duì)微服務(wù)進(jìn)行管理整合應(yīng)用的。微服務(wù)架構(gòu) 依賴(lài)于 微服務(wù),是在微服務(wù)基礎(chǔ)之上的。

例如:上面已經(jīng)列舉了什么是微服務(wù)。在醫(yī)院里,每一個(gè)科室都是一個(gè)獨(dú)立的微服務(wù),那么 這個(gè)醫(yī)院 就是 一個(gè)大型的微服務(wù)架構(gòu),就類(lèi)似 院長(zhǎng) 可以 對(duì)下面的 科室進(jìn)行管理。微服務(wù)架構(gòu)主要就是這種功能。

以上是9道微服務(wù)面試題,你能回答上來(lái)幾個(gè)?的詳細(xì)內(nèi)容。更多信息請(qǐng)關(guān)注PHP中文網(wǎng)其他相關(guān)文章!

本站聲明
本文內(nèi)容由網(wǎng)友自發(fā)貢獻(xiàn),版權(quán)歸原作者所有,本站不承擔(dān)相應(yīng)法律責(zé)任。如您發(fā)現(xiàn)有涉嫌抄襲侵權(quán)的內(nèi)容,請(qǐng)聯(lián)系admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費(fèi)脫衣服圖片

Undresser.AI Undress

Undresser.AI Undress

人工智能驅(qū)動(dòng)的應(yīng)用程序,用于創(chuàng)建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用于從照片中去除衣服的在線(xiàn)人工智能工具。

Clothoff.io

Clothoff.io

AI脫衣機(jī)

Video Face Swap

Video Face Swap

使用我們完全免費(fèi)的人工智能換臉工具輕松在任何視頻中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費(fèi)的代碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

功能強(qiáng)大的PHP集成開(kāi)發(fā)環(huán)境

Dreamweaver CS6

Dreamweaver CS6

視覺(jué)化網(wǎng)頁(yè)開(kāi)發(fā)工具

SublimeText3 Mac版

SublimeText3 Mac版

神級(jí)代碼編輯軟件(SublimeText3)

熱門(mén)話(huà)題

Laravel 教程
1601
29
PHP教程
1502
276
面試官:Spring Aop 常見(jiàn)注解和執(zhí)行順序 面試官:Spring Aop 常見(jiàn)注解和執(zhí)行順序 Aug 15, 2023 pm 04:32 PM

你肯定知道 Spring , 那說(shuō)說(shuō) Aop 的去全部通知順序, Spring Boot 或者 Spring Boot 2 對(duì) aop 的執(zhí)行順序影響?說(shuō)說(shuō)你在 AOP 中遇到的那些坑?

某團(tuán)面試:如果線(xiàn)上遇到了OOM,你該如何排查?如何解決?哪些方案? 某團(tuán)面試:如果線(xiàn)上遇到了OOM,你該如何排查?如何解決?哪些方案? Aug 23, 2023 pm 02:34 PM

OOM 意味著程序存在著漏洞,可能是代碼或者 JVM 參數(shù)配置引起的。這篇文章和讀者聊聊,Java 進(jìn)程觸發(fā)了 OOM 后如何排查。

餓了么筆試題,看似簡(jiǎn)單,難倒一批人 餓了么筆試題,看似簡(jiǎn)單,難倒一批人 Aug 24, 2023 pm 03:29 PM

在很多公司的筆試題中,千萬(wàn)別小看,都是有坑的,一不小心自己就掉進(jìn)去了。遇到這種關(guān)于循環(huán)的筆試題,建議,自己冷靜思考,一步一步來(lái)。

上周,XX保險(xiǎn)面試,涼了?。?! 上周,XX保險(xiǎn)面試,涼了!??! Aug 25, 2023 pm 03:44 PM

上周,一位群里的朋友去平安保險(xiǎn)面試了,結(jié)果有些遺憾,蠻可惜的,但希望你不要?dú)怵H,正如你所說(shuō)的,面試中遇到的問(wèn)題,基本上都是可以通過(guò)背面試題解決的,所以請(qǐng)加油!

5道String面試題,能全答對(duì)的人不到10%?。ǜ酱鸢福? />
								</a>
								<a href=5道String面試題,能全答對(duì)的人不到10%!(附答案) Aug 23, 2023 pm 02:49 PM

?這篇來(lái)看看關(guān)于 Java String類(lèi)的 5 道面試題,這五道題,我自己在面試過(guò)程中親身經(jīng)歷過(guò)幾道題目,本篇就帶你了解這些題的答案為什么是這樣。

小白也能與BAT面試官對(duì)線(xiàn):CAS 小白也能與BAT面試官對(duì)線(xiàn):CAS Aug 24, 2023 pm 03:09 PM

Java并發(fā)編程系列番外篇C A S(Compare and swap),文章風(fēng)格依然是圖文并茂,通俗易懂,讓讀者們也能與面試官瘋狂對(duì)線(xiàn)。

一道幾乎所有Java面試都會(huì)問(wèn)到的問(wèn)題:說(shuō)說(shuō)ArrayList和LinkedList的區(qū)別 一道幾乎所有Java面試都會(huì)問(wèn)到的問(wèn)題:說(shuō)說(shuō)ArrayList和LinkedList的區(qū)別 Jul 26, 2023 pm 03:11 PM

Java的數(shù)據(jù)結(jié)構(gòu)是面試考察的重點(diǎn),只要參與過(guò)Java面試的同學(xué)相信都有所體會(huì)。面試官在問(wèn)此類(lèi)問(wèn)題的時(shí)候往往是想考察你是否研究過(guò)Java中常用數(shù)據(jù)類(lèi)型的底層結(jié)構(gòu),而不是只是簡(jiǎn)單的停留在"會(huì)使用"的層次。

面試官:說(shuō)一下類(lèi)加載的過(guò)程(10張圖解) 面試官:說(shuō)一下類(lèi)加載的過(guò)程(10張圖解) Aug 23, 2023 pm 03:05 PM

當(dāng)我們要使用一個(gè)類(lèi)的時(shí)候,要通過(guò)ClassLoader將類(lèi)加載到內(nèi)存中。

See all articles