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

首頁 Java Java面試題 面試反饋 Spring Cloud 的25連環(huán)炮

面試反饋 Spring Cloud 的25連環(huán)炮

Aug 24, 2023 pm 03:57 PM
springcloud


前言

前段時(shí)間由于特殊原因,導(dǎo)致我們的面試連環(huán)炮斷更了,剛好上周一位老鐵去面試被問到了Spring Cloud,然后結(jié)合他的反饋,今天我們繼續(xù)走起SpringCloud面試連環(huán)炮。

歡迎大家關(guān)注我:

Spring Cloud核心知識總結(jié)

下面是一張Spring Cloud核心組件關(guān)系圖:

面試反饋 Spring Cloud 的25連環(huán)炮


從這張圖中,其實(shí)我們是可以獲取很多信息的,希望大家細(xì)細(xì)品嘗。

下面是Spring Cloud NetflixSpring Cloud Alibaba核心組件的總結(jié):

面試反饋 Spring Cloud 的25連環(huán)炮

活不多說,我們直接開始 Spring Cloud 連環(huán)炮。

連環(huán)炮走起

1、什么是Spring Cloud ?

Spring cloud 流應(yīng)用程序啟動(dòng)器是基于 Spring Boot 的 Spring 集成應(yīng)用程序,提供與外部系統(tǒng)的集成。Spring cloud Task,一個(gè)生命周期短暫的微服務(wù)框架,用于快速構(gòu)建執(zhí)行有限數(shù)據(jù)處理的應(yīng)用程序。

2、什么是微服務(wù)?

微服務(wù)架構(gòu)是一種架構(gòu)模式或者說是一種架構(gòu)風(fēng)格,它提倡將單一應(yīng)用程序劃分為一組小的服務(wù),每個(gè)服務(wù)運(yùn)行在其獨(dú)立的自己的進(jìn)程中,服務(wù)之間相互協(xié)調(diào)、互相配合,為用戶提供最終價(jià)值。服務(wù)之間采用輕量級的通信機(jī)制互相溝通(通常是基于HTTP的RESTful API),每個(gè)服務(wù)都圍繞著具體的業(yè)務(wù)進(jìn)行構(gòu)建,并且能夠被獨(dú)立的構(gòu)建在生產(chǎn)環(huán)境、類生產(chǎn)環(huán)境等。另外,應(yīng)避免統(tǒng)一的、集中式的服務(wù)管理機(jī)制,對具體的一個(gè)服務(wù)而言,應(yīng)根據(jù)業(yè)務(wù)上下文,選擇合適的語言、工具對其進(jìn)行構(gòu)建,可以有一個(gè)非常輕量級的集中式管理來協(xié)調(diào)這些服務(wù),可以使用不同的語言來編寫服務(wù),也可以使用不同的數(shù)據(jù)存儲。

通俗的來講:

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

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

3、Spring Cloud有什么優(yōu)勢

使用 Spring Boot 開發(fā)分布式微服務(wù)時(shí),我們面臨以下問題

  • 與分布式系統(tǒng)相關(guān)的復(fù)雜性-這種開銷包括網(wǎng)絡(luò)問題,延遲開銷,帶寬問題,安全問題。
  • 服務(wù)發(fā)現(xiàn)-服務(wù)發(fā)現(xiàn)工具管理群集中的流程和服務(wù)如何查找和互相交談。它涉及一個(gè)服務(wù)目錄,在該目錄中注冊服務(wù),然后能夠查找并連接到該目錄中的服務(wù)。
  • 冗余-分布式系統(tǒng)中的冗余問題。
  • 負(fù)載平衡 --負(fù)載平衡改善跨多個(gè)計(jì)算資源的工作負(fù)荷,諸如計(jì)算機(jī),計(jì)算機(jī)集群,網(wǎng)絡(luò)鏈路,中央處理單元,或磁盤驅(qū)動(dòng)器的分布。
  • 性能-問題 由于各種運(yùn)營開銷導(dǎo)致的性能問題。
  • 部署復(fù)雜性-Devops 技能的要求。

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

同步通信:dobbo通過 RPC 遠(yuǎn)程過程調(diào)用、springcloud通過 REST ?接口json調(diào)用等。

異步:消息隊(duì)列,如:RabbitMqActiveM、Kafka等消息隊(duì)列。

5、 什么是服務(wù)熔斷?什么是服務(wù)降級?

熔斷機(jī)制是應(yīng)對雪崩效應(yīng)的一種微服務(wù)鏈路保護(hù)機(jī)制。當(dāng)某個(gè)微服務(wù)不可用或者響應(yīng)時(shí)間太長時(shí),會(huì)進(jìn)行服務(wù)降級,進(jìn)而熔斷該節(jié)點(diǎn)微服務(wù)的調(diào)用,快速返回“錯(cuò)誤”的響應(yīng)信息。當(dāng)檢測到該節(jié)點(diǎn)微服務(wù)調(diào)用響應(yīng)正常后恢復(fù)調(diào)用鏈路。在Spring Cloud框架里熔斷機(jī)制通過Hystrix實(shí)現(xiàn),Hystrix會(huì)監(jiān)控微服務(wù)間調(diào)用的狀況,當(dāng)失敗的調(diào)用到一定閾值,缺省是5秒內(nèi)調(diào)用20次,如果失敗,就會(huì)啟動(dòng)熔斷機(jī)制。

服務(wù)降級,一般是從整體負(fù)荷考慮。就是當(dāng)某個(gè)服務(wù)熔斷之后,服務(wù)器將不再被調(diào)用,此時(shí)客戶端可以自己準(zhǔn)備一個(gè)本地的fallback回調(diào),返回一個(gè)缺省值。這樣做,雖然水平下降,但好歹可用,比直接掛掉強(qiáng)。

Hystrix相關(guān)注解@EnableHystrix:開啟熔斷 @HystrixCommand(fallbackMethod=”XXX”),聲明一個(gè)失敗回滾處理函數(shù)XXX,當(dāng)被注解的方法執(zhí)行超時(shí)(默認(rèn)是1000毫秒),就會(huì)執(zhí)行fallback函數(shù),返回錯(cuò)誤提示。

6、 請說說Eureka和zookeeper 的區(qū)別?

Zookeeper保證了CP,Eureka保證了AP。

A:高可用

C:一致性

P:分區(qū)容錯(cuò)性

1.當(dāng)向注冊中心查詢服務(wù)列表時(shí),我們可以容忍注冊中心返回的是幾分鐘以前的信息,但不能容忍直接down掉不可用。也就是說,服務(wù)注冊功能對高可用性要求比較高,但zk會(huì)出現(xiàn)這樣一種情況,當(dāng)master節(jié)點(diǎn)因?yàn)榫W(wǎng)絡(luò)故障與其他節(jié)點(diǎn)失去聯(lián)系時(shí),剩余節(jié)點(diǎn)會(huì)重新選leader。問題在于,選取leader時(shí)間過長,30 ~ 120s,且選取期間zk集群都不可用,這樣就會(huì)導(dǎo)致選取期間注冊服務(wù)癱瘓。在云部署的環(huán)境下,因網(wǎng)絡(luò)問題使得zk集群失去master節(jié)點(diǎn)是較大概率會(huì)發(fā)生的事,雖然服務(wù)能夠恢復(fù),但是漫長的選取時(shí)間導(dǎo)致的注冊長期不可用是不能容忍的。

2.Eureka保證了可用性,Eureka各個(gè)節(jié)點(diǎn)是平等的,幾個(gè)節(jié)點(diǎn)掛掉不會(huì)影響正常節(jié)點(diǎn)的工作,剩余的節(jié)點(diǎn)仍然可以提供注冊和查詢服務(wù)。而Eureka的客戶端向某個(gè)Eureka注冊或發(fā)現(xiàn)時(shí)發(fā)生連接失敗,則會(huì)自動(dòng)切換到其他節(jié)點(diǎn),只要有一臺Eureka還在,就能保證注冊服務(wù)可用,只是查到的信息可能不是最新的。除此之外,Eureka還有自我保護(hù)機(jī)制,如果在15分鐘內(nèi)超過85%的節(jié)點(diǎn)沒有正常的心跳,那么Eureka就認(rèn)為客戶端與注冊中心發(fā)生了網(wǎng)絡(luò)故障,此時(shí)會(huì)出現(xiàn)以下幾種情況:

①、Eureka不在從注冊列表中移除因?yàn)殚L時(shí)間沒有收到心跳而應(yīng)該過期的服務(wù)。

②、Eureka仍然能夠接受新服務(wù)的注冊和查詢請求,但是不會(huì)被同步到其他節(jié)點(diǎn)上(即保證當(dāng)前節(jié)點(diǎn)仍然可用)

③、當(dāng)網(wǎng)絡(luò)穩(wěn)定時(shí),當(dāng)前實(shí)例新的注冊信息會(huì)被同步到其他節(jié)點(diǎn)。

因此,Eureka可以很好的應(yīng)對因網(wǎng)絡(luò)故障導(dǎo)致部分節(jié)點(diǎn)失去聯(lián)系的情況,而不會(huì)像Zookeeper那樣使整個(gè)微服務(wù)癱瘓

7、SpringBoot和SpringCloud的區(qū)別?

SpringBoot專注于快速方便的開發(fā)單個(gè)個(gè)體微服務(wù)。

SpringCloud是關(guān)注全局的微服務(wù)協(xié)調(diào)整理治理框架,它將SpringBoot開發(fā)的一個(gè)個(gè)單體微服務(wù)整合并管理起來,

為各個(gè)微服務(wù)之間提供,配置管理、服務(wù)發(fā)現(xiàn)、斷路器、路由、微代理、事件總線、全局鎖、決策競選、分布式會(huì)話等等集成服務(wù)

SpringBoot可以離開SpringCloud獨(dú)立使用開發(fā)項(xiàng)目, 但是SpringCloud離不開SpringBoot ,屬于依賴的關(guān)系.

SpringBoot專注于快速、方便的開發(fā)單個(gè)微服務(wù)個(gè)體,SpringCloud關(guān)注全局的服務(wù)治理框架。

8、負(fù)載平衡的意義什么?

在計(jì)算中,負(fù)載平衡可以改善跨計(jì)算機(jī),計(jì)算機(jī)集群,網(wǎng)絡(luò)鏈接,中央處理單元或磁盤驅(qū)動(dòng)器等多種計(jì)算資源的工作負(fù)載分布。負(fù)載平衡旨在優(yōu)化資源使用,最大化吞吐量,最小化響應(yīng)時(shí)間并避免任何單一資源 的過載。使用多個(gè)組件進(jìn)行負(fù)載平衡而不是單個(gè)組件可能會(huì)通過冗余來提高可靠性和可用性。負(fù)載平衡通常涉及專用軟件或硬件,例如多層交換機(jī)或域名系統(tǒng)服務(wù)器進(jìn)程。

9、什么是Hystrix?它如何實(shí)現(xiàn)容錯(cuò)?

Hystrix是一個(gè)延遲和容錯(cuò)庫,旨在隔離遠(yuǎn)程系統(tǒng),服務(wù)和第三方庫的訪問點(diǎn),當(dāng)出現(xiàn)故障是不可避免的故障時(shí),停止級聯(lián)故障并在復(fù)雜的分布式系統(tǒng)中實(shí)現(xiàn)彈性。

通常對于使用微服務(wù)架構(gòu)開發(fā)的系統(tǒng),涉及到許多微服務(wù)。這些微服務(wù)彼此協(xié)作。

思考以下微服務(wù)

面試反饋 Spring Cloud 的25連環(huán)炮

假設(shè)如果上圖中的微服務(wù)9失敗了,那么使用傳統(tǒng)方法我們將傳播一個(gè)異常。但這仍然會(huì)導(dǎo)致整個(gè)系統(tǒng)崩潰。

隨著微服務(wù)數(shù)量的增加,這個(gè)問題變得更加復(fù)雜。微服務(wù)的數(shù)量可以高達(dá)1000.這是hystrix出現(xiàn)的地方 我們將使用Hystrix在這種情況下的Fallback方法功能。我們有兩個(gè)服務(wù)employee-consumer使用由employee-consumer公開的服務(wù)。

簡化圖如下所示

面試反饋 Spring Cloud 的25連環(huán)炮

現(xiàn)在假設(shè)由于某種原因,employee-producer公開的服務(wù)會(huì)拋出異常。我們在這種情況下使用Hystrix定義了一個(gè)回退方法。這種后備方法應(yīng)該具有與公開服務(wù)相同的返回類型。如果暴露服務(wù)中出現(xiàn)異常,則回退方法將返回一些值。

10、什么是Hystrix斷路器?我們需要它嗎?

由于某些原因,employee-consumer公開服務(wù)會(huì)引發(fā)異常。在這種情況下使用Hystrix我們定義了一個(gè)回退方法。如果在公開服務(wù)中發(fā)生異常,則回退方法返回一些默認(rèn)值。

面試反饋 Spring Cloud 的25連環(huán)炮


如果firstPage method() 中的異常繼續(xù)發(fā)生,則Hystrix電路將中斷,并且員工使用者將一起跳過firtsPage方法,并直接調(diào)用回退方法。斷路器的目的是給第一頁方法或第一頁方法可能調(diào)用的其他方法留出時(shí)間,并導(dǎo)致異?;謴?fù)??赡馨l(fā)生的情況是,在負(fù)載較小的情況下,導(dǎo)致異常的問題有更好的恢復(fù)機(jī)會(huì) 。

面試反饋 Spring Cloud 的25連環(huán)炮


11、說說 RPC 的實(shí)現(xiàn)原理

首先需要有處理網(wǎng)絡(luò)連接通訊的模塊,負(fù)責(zé)連接建立、管理和消息的傳輸。其次需要有編 解碼的模塊,因?yàn)榫W(wǎng)絡(luò)通訊都是傳輸?shù)淖止?jié)碼,需要將我們使用的對象序列化和反序列 化。剩下的就是客戶端和服務(wù)器端的部分,服務(wù)器端暴露要開放的服務(wù)接口,客戶調(diào)用服 務(wù)接口的一個(gè)代理實(shí)現(xiàn),這個(gè)代理實(shí)現(xiàn)負(fù)責(zé)收集數(shù)據(jù)、編碼并傳輸給服務(wù)器然后等待結(jié)果 返回。

12,eureka自我保護(hù)機(jī)制是什么?

當(dāng)Eureka Server 節(jié)點(diǎn)在短時(shí)間內(nèi)丟失了過多實(shí)例的連接時(shí)(比如網(wǎng)絡(luò)故障或頻繁啟動(dòng)關(guān)閉客戶端)節(jié)點(diǎn)會(huì)進(jìn)入自我保護(hù)模式,保護(hù)注冊信息,不再刪除注冊數(shù)據(jù),故障恢復(fù)時(shí),自動(dòng)退出自我保護(hù)模式。

13,什么是Ribbon?

ribbon是一個(gè)負(fù)載均衡客戶端,可以很好的控制htt和tcp的一些行為。feign默認(rèn)集成了ribbon。feign默認(rèn)集成了ribbon。

14,什么是 Netflix Feign?它的優(yōu)點(diǎn)是什么?

Feign 是受到 Retrofit,JAXRS-2.0 和 WebSocket 啟發(fā)的 java 客戶端聯(lián)編程序。

Feign 的第一個(gè)目標(biāo)是將約束分母的復(fù)雜性統(tǒng)一到 http apis,而不考慮其穩(wěn)定性。

特點(diǎn):

  • Feign 采用的是基于接口的注解
  • Feign 整合了ribbon,具有負(fù)載均衡的能力
  • 整合了Hystrix,具有熔斷的能力

使用方式

  • 添加pom依賴。
  • 啟動(dòng)類添加@EnableFeignClients
  • 定義一個(gè)接口@FeignClient(name=“xxx”)
14,什么是 Netflix Feign?它的優(yōu)點(diǎn)是什么?

Feign 是受到 Retrofit,JAXRS-2.0 和 WebSocket 啟發(fā)的 java 客戶端聯(lián)編程序。

Feign 的第一個(gè)目標(biāo)是將約束分母的復(fù)雜性統(tǒng)一到 http apis,而不考慮其穩(wěn)定性。

特點(diǎn):??
  • Feign 采用的是基于接口的注解????
  • Feign 整合了ribbon,具有負(fù)載均衡的能力????
  • 整合了Hystrix,具有熔斷的能力????????使用方式??
    • 添加pom依賴。????
    • 啟動(dòng)類添加@EnableFeignClients????
    • 定義一個(gè)接口@FeignClient(name=“xxx”)指定調(diào)用哪個(gè)服務(wù)????????????15, Ribbon和Feign的區(qū)別?????????1.Ribbon都是調(diào)用其他服務(wù)的,但方式不同。2.啟動(dòng)類注解不同,Ribbon是@RibbonClient feign的是@EnableFeignClients 3.服務(wù)指定的位置不同,Ribbon是在@RibbonClient注解上聲明,F(xiàn)eign則是在定義抽象方法的接口中使用@FeignClient聲明。4.調(diào)用方式不同,Ribbon需要自己構(gòu)建http請求,模擬http請求。??

      16、Spring Cloud 的核心組件有哪些?

      • Eureka:服務(wù)注冊于發(fā)現(xiàn)
      • Feign:基于動(dòng)態(tài)代理機(jī)制,根據(jù)注解和選擇的機(jī)器,拼接請求 url 地址,發(fā)起請求。
      • Ribbon:實(shí)現(xiàn)負(fù)載均衡,從一個(gè)服務(wù)的多臺機(jī)器中選擇一臺。
      • Hystrix:提供線程池,不同的服務(wù)走不同的線程池,實(shí)現(xiàn)了不同服務(wù)調(diào)用的隔離,避免了服務(wù)雪崩的問題。
      • Zuul:網(wǎng)關(guān)管理,由 Zuul 網(wǎng)關(guān)轉(zhuǎn)發(fā)請求給對應(yīng)的服務(wù)。

      17、說說Spring Boot和Spring Cloud的關(guān)系

      Spring Boot是Spring推出用于解決傳統(tǒng)框架配置文件冗余,裝配組件繁雜的基于Maven的解決方案,旨在快速搭建單個(gè)微服務(wù) 而Spring Cloud專注于解決各個(gè)微服務(wù)之間的協(xié)調(diào)與配置,服務(wù)之間的通信,熔斷,負(fù)載均衡等 技術(shù)維度并相同,并且Spring Cloud是依賴于Spring Boot的,而Spring Boot并不是依賴與Spring Cloud,甚至還可以和Dubbo進(jìn)行優(yōu)秀的整合開發(fā)

      總結(jié)

      • SpringBoot專注于快速方便的開發(fā)單個(gè)個(gè)體的微服務(wù)
      • SpringCloud是關(guān)注全局的微服務(wù)協(xié)調(diào)整理治理框架,整合并管理各個(gè)微服務(wù),為各個(gè)微服務(wù)之間提供,配置管理,服務(wù)發(fā)現(xiàn),斷路器,路由,事件總線等集成服務(wù)
      • Spring Boot不依賴于Spring Cloud,Spring Cloud依賴于Spring Boot,屬于依賴關(guān)系
      • Spring Boot專注于快速,方便的開發(fā)單個(gè)的微服務(wù)個(gè)體,Spring Cloud關(guān)注全局的服務(wù)治理框架

      18、說說微服務(wù)之間是如何獨(dú)立通訊的?

      遠(yuǎn)程過程調(diào)用(Remote Procedure Invocation)

      也就是我們常說的服務(wù)的注冊與發(fā)現(xiàn),直接通過遠(yuǎn)程過程調(diào)用來訪問別的service。

      優(yōu)點(diǎn):簡單,常見,因?yàn)闆]有中間件代理,系統(tǒng)更簡單

      缺點(diǎn):只支持請求/響應(yīng)的模式,不支持別的,比如通知、請求/異步響應(yīng)、發(fā)布/訂閱、發(fā)布/異步響應(yīng),降低了可用性,因?yàn)榭蛻舳撕头?wù)端在請求過程中必須都是可用的。

      消息

      使用異步消息來做服務(wù)間通信。服務(wù)間通過消息管道來交換消息,從而通信。

      優(yōu)點(diǎn):把客戶端和服務(wù)端解耦,更松耦合,提高可用性,因?yàn)橄⒅虚g件緩存了消息,直到消費(fèi)者可以消費(fèi), ? ? ? 支持很多通信機(jī)制比如通知、請求/異步響應(yīng)、發(fā)布/訂閱、發(fā)布/異步響應(yīng)。

      缺點(diǎn):消息中間件有額外的復(fù)雜。

      19、Spring Cloud如何實(shí)現(xiàn)服務(wù)的注冊?

      服務(wù)發(fā)布時(shí),指定對應(yīng)的服務(wù)名,將服務(wù)注冊到 注冊中心(Eureka 、Zookeeper)。Eureka 、Zookeeper)。

      注冊中心加@EnableEurekaServer,服務(wù)用@EnableDiscoveryClient

      注冊中心加@EnableEurekaServer,服務(wù)用@EnableDiscoveryClient,然后用ribbon或feign進(jìn)行服務(wù)直接的調(diào)用發(fā)現(xiàn)。

      此題偏向于向?qū)崙?zhàn),就看你是不是背面試題的,沒有實(shí)戰(zhàn)的人是不知道的。

      20、什么是服務(wù)熔斷?

      在復(fù)雜的分布式系統(tǒng)中,微服務(wù)之間的相互調(diào)用,有可能出現(xiàn)各種各樣的原因?qū)е路?wù)的阻塞,在高并發(fā)場景下,服務(wù)的阻塞意味著線程的阻塞,導(dǎo)致當(dāng)前線程不可用,服務(wù)器的線程全部阻塞,導(dǎo)致服務(wù)器崩潰,由于服務(wù)之間的調(diào)用關(guān)系是同步的,會(huì)對整個(gè)微服務(wù)系統(tǒng)造成服務(wù)雪崩

      為了解決某個(gè)微服務(wù)的調(diào)用響應(yīng)時(shí)間過長或者不可用進(jìn)而占用越來越多的系統(tǒng)資源引起雪崩效應(yīng)就需要進(jìn)行服務(wù)熔斷和服務(wù)降級處理。

      所謂的服務(wù)熔斷指的是某個(gè)服務(wù)故障或異常一起類似顯示世界中的“保險(xiǎn)絲"當(dāng)某個(gè)異常條件被觸發(fā)就直接熔斷整個(gè)服務(wù),而不是一直等到此服務(wù)超時(shí)。

      服務(wù)熔斷就是相當(dāng)于我們電閘的保險(xiǎn)絲,一旦發(fā)生服務(wù)雪崩的,就會(huì)熔斷整個(gè)服務(wù),通過維護(hù)一個(gè)自己的線程池,當(dāng)線程達(dá)到閾值的時(shí)候就啟動(dòng)服務(wù)降級,如果其他請求繼續(xù)訪問就直接返回fallback的默認(rèn)值??

      21、了解Eureka自我保護(hù)機(jī)制嗎?

      當(dāng)Eureka Server 節(jié)點(diǎn)在短時(shí)間內(nèi)丟失了過多實(shí)例的連接時(shí)(比如網(wǎng)絡(luò)故障或頻繁啟動(dòng)關(guān)閉客戶端)節(jié)點(diǎn)會(huì)進(jìn)入自我保護(hù)模式,保護(hù)注冊信息,不再刪除注冊數(shù)據(jù),故障恢復(fù)時(shí),自動(dòng)退出自我保護(hù)模式。

      22、熟悉 Spring Cloud Bus 嗎?

      spring cloud bus 將分布式的節(jié)點(diǎn)用輕量的消息代理連接起來,它可以用于廣播配置文件的更改或者服務(wù)直接的通訊,也可用于監(jiān)控。如果修改了配置文件,發(fā)送一次請求,所有的客戶端便會(huì)重新讀取配置文件。

      23、Spring Cloud 斷路器有什么作用?

      當(dāng)一個(gè)服務(wù)調(diào)用另一個(gè)服務(wù)由于網(wǎng)絡(luò)原因或自身原因出現(xiàn)問題,調(diào)用者就會(huì)等待被調(diào)用者的響應(yīng),當(dāng)更多的服務(wù)請求到這些資源導(dǎo)致更多的請求等待,發(fā)生連鎖效應(yīng)(雪崩效應(yīng))。一段時(shí)間內(nèi) 達(dá)到一定的次數(shù)無法調(diào)用 并且多次監(jiān)測沒有恢復(fù)的跡象,這時(shí)候斷路器完全打開 那么下次請求就不會(huì)請求到該服務(wù)。

      半開:短時(shí)間內(nèi) 有恢復(fù)跡象 斷路器會(huì)將部分請求發(fā)給該服務(wù),正常調(diào)用時(shí) 斷路器關(guān)閉。關(guān)閉:當(dāng)服務(wù)一直處于正常狀態(tài) 能正常調(diào)用。

      24、了解Spring Cloud Config 嗎?

      在分布式系統(tǒng)中,由于服務(wù)數(shù)量巨多,為了方便服務(wù)配置文件統(tǒng)一管理,實(shí)時(shí)更新,所以需要分布式配置中心組件。在Spring Cloud中,有分布式配置中心組件Spring Cloud Config,它支持配置服務(wù)放在配置服務(wù)的內(nèi)存中(即本地),也支持放在遠(yuǎn)程Git倉庫中。Spring Cloud Config,它支持配置服務(wù)放在配置服務(wù)的內(nèi)存中(即本地),也支持放在遠(yuǎn)程Git倉庫中。

      Spring Cloud Config

      Spring Cloud Config 組件中,分兩個(gè)角色,一是config server,二是config client。

      使用方式:??
      • 添加pom依賴
      • 配置文件添加相關(guān)配置
      • 啟動(dòng)類添加注解@EnableConfigServer

      25、說說你對Spring Cloud Gateway的理解

      Spring Cloud Gateway是Spring Cloud官方推出的第二代網(wǎng)關(guān)框架,取代Zuul網(wǎng)關(guān)。網(wǎng)關(guān)作為流量的,在微服務(wù)系統(tǒng)中有著非常作用,網(wǎng)關(guān)常見的功能有路由轉(zhuǎn)發(fā)、權(quán)限校驗(yàn)、限流控制等作用。

      使用了一個(gè)RouteLocatorBuilder的bean去創(chuàng)建路由,除了創(chuàng)建路由RouteLocatorBuilder可以讓你添加各種predicates和filters,predicates斷言的意思,顧名思義就是根據(jù)具體的請求的規(guī)則,由具體的route去處理,filters是各種過濾器,用來對請求做各種判斷和修改。

      參考;http://1pgqu.cn/M0NZo

      總結(jié)

      Spring Cloud目前相當(dāng)?shù)幕馃幔膊畈欢嗍莏ava開發(fā)者必備技能之一了。面試的時(shí)候被問,那也是正常不過了,很多人可能用來很久,但是沒有去了解過原理,面試照樣掛掉。背面試題,在很大層面上還是很有用的。但從長遠(yuǎn)角度來說,希望大家更深層次去學(xué)習(xí)、去實(shí)踐。只有自己真的掌握,那才叫NB。

以上是面試反饋 Spring Cloud 的25連環(huán)炮的詳細(xì)內(nèi)容。更多信息請關(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)容,請聯(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

用于從照片中去除衣服的在線人工智能工具。

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集成開發(fā)環(huán)境

Dreamweaver CS6

Dreamweaver CS6

視覺化網(wǎng)頁開發(fā)工具

SublimeText3 Mac版

SublimeText3 Mac版

神級代碼編輯軟件(SublimeText3)

面試反饋 Spring Cloud 的25連環(huán)炮 面試反饋 Spring Cloud 的25連環(huán)炮 Aug 24, 2023 pm 03:57 PM

Spring Cloud目前相當(dāng)?shù)幕馃幔膊畈欢嗍莏ava開發(fā)者必備技能之一了。面試的時(shí)候被問,那也是正常不過了,很多人可能用來很久,但是沒有去了解過原理,面試照樣掛掉。

比較與選擇指南:SpringCloud和SpringBoot的功能對比 比較與選擇指南:SpringCloud和SpringBoot的功能對比 Dec 29, 2023 pm 06:36 PM

SpringCloud和SpringBoot是目前Java領(lǐng)域中最熱門的開源框架,它們分別提供了一套完善的微服務(wù)架構(gòu)和快速構(gòu)建應(yīng)用程序的解決方案。本文將對它們的功能進(jìn)行比較,并給出選擇指南,以幫助讀者了解它們的優(yōu)勢和適用場景。SpringBoot是一個(gè)用于開發(fā)Java應(yīng)用程序的框架,它提供了一個(gè)簡化的開發(fā)流程,集成了大量常用的功能和組件,減少了開發(fā)者的工作量

springcloud五大核心組件是哪些 springcloud五大核心組件是哪些 Jun 12, 2023 pm 03:51 PM

springcloud五大核心組件是:1、Eureka,實(shí)現(xiàn)服務(wù)治理;2、Ribbon,提供客戶側(cè)的軟件負(fù)載均衡算法;3、Hystrix斷路器,防止一個(gè)應(yīng)用程序多次試圖執(zhí)行一個(gè)操作;4、Zuul,具有api網(wǎng)關(guān),路由,負(fù)載均衡等多種作用;5、Config,進(jìn)行配置管理。

SpringCloud-Spring?Boot?Starter使用測試實(shí)例分析 SpringCloud-Spring?Boot?Starter使用測試實(shí)例分析 May 16, 2023 am 11:10 AM

SpringBootStarter是什么?SpringBootStarter是在SpringBoot組件中被提出來的一種概念、簡化了很多煩瑣的配置、通過引入各種SpringBootStarter包可以快速搭建出一個(gè)項(xiàng)目的腳手架。比如我們經(jīng)常用的一些:spring-boot-starter-web:spring-boot-starter-data-redis:spring-boot-starter-data-mongodb:spring-boot-starter-data-jpa:spring-b

SpringCloud和SpringBoot在微服務(wù)領(lǐng)域的應(yīng)用方式的對比和分析 SpringCloud和SpringBoot在微服務(wù)領(lǐng)域的應(yīng)用方式的對比和分析 Dec 29, 2023 pm 03:45 PM

近年來,隨著云計(jì)算和分布式架構(gòu)的興起,微服務(wù)架構(gòu)的應(yīng)用越來越廣泛。而SpringCloud和SpringBoot作為Java開發(fā)中的兩個(gè)重要框架,對于微服務(wù)的實(shí)現(xiàn)起到了重要的作用。然而,很多人對于它們在微服務(wù)領(lǐng)域的不同應(yīng)用方式還存在一定的疑惑。本文將從不同的角度探索SpringCloud和SpringBoot在微服務(wù)中的應(yīng)用方式。首先,我們來了解一下Spri

Idea?springboot?springCloud熱加載熱調(diào)試的常用方法有哪些 Idea?springboot?springCloud熱加載熱調(diào)試的常用方法有哪些 May 18, 2023 pm 05:43 PM

場景描述在項(xiàng)目開發(fā)的過程中,需要修改調(diào)試的時(shí)候偶每次都需要重啟項(xiàng)目浪費(fèi)時(shí)間,下面是我整理的兩種常用的兩種方式方式一修改啟動(dòng)配置方式(主要針對debug模式下)點(diǎn)擊啟動(dòng)配置=》editconfigrations…configration下面修改Updateclassesandresourceson‘update‘action:當(dāng)用戶主動(dòng)執(zhí)行更新的時(shí)候更新快捷鍵:Ctrl+F9onframedeactication:在編輯窗口失去焦點(diǎn)的時(shí)

springcloud和springboot有什么區(qū)別 springcloud和springboot有什么區(qū)別 Dec 28, 2023 pm 03:34 PM

springcloud和springboot的區(qū)別:1、作用;2、使用方式;3、創(chuàng)作初衷;4、目的;5、集成性;6、擴(kuò)展性;7、復(fù)雜性;8、社區(qū)支持;9、安全性;10、部署和運(yùn)維。詳細(xì)介紹:1、作用,Spring Boot主要的作用是為微服務(wù)開發(fā)提供一種快速的方式,簡化配置文件,提高工作效率,而Spring Cloud則是一個(gè)綜合管理框架,用于給微服務(wù)提供一個(gè)綜合管理框架等等。

從架構(gòu)角度看SpringCloud與SpringBoot的差異 從架構(gòu)角度看SpringCloud與SpringBoot的差異 Dec 29, 2023 pm 04:13 PM

從架構(gòu)角度看SpringCloud與SpringBoot的差異引言:在當(dāng)今的互聯(lián)網(wǎng)時(shí)代,構(gòu)建分布式系統(tǒng)已經(jīng)成為了一種必要的需求。而SpringBoot和SpringCloud正是為了滿足這個(gè)需求而誕生的。盡管它們都是由Spring框架所提供的解決方案,但從架構(gòu)角度來看,它們存在著一些重要的差異。本文將從架構(gòu)的角度出發(fā),對SpringBoot和SpringCl

See all articles