第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

首頁(yè) 慕課教程 Spring Cloud Hystrix Spring Cloud Hystrix Hystrix 服務(wù)快速失敗概念講解與實(shí)操(二)

Hystrix 服務(wù)快速失敗概念講解與實(shí)操(二)

1. 前言

在上述小節(jié)中,我們對(duì) Hystrix 中基本的服務(wù)快速失敗做了詳細(xì)的介紹,通過(guò)對(duì)上述小節(jié)的學(xué)習(xí),我們可以對(duì)基本的服務(wù)快速失敗有所了解。Hystrix 還為我們提供了另一種實(shí)現(xiàn)方式的服務(wù)快速失敗機(jī)制,那就是斷路器版本。

在本節(jié)中,我將針對(duì)斷路器版本的服務(wù)快速失敗之概念做詳細(xì)介紹,同時(shí)也會(huì)對(duì) Hystrix 所提供的熔斷思想做進(jìn)一步的介紹,讓我們繼續(xù)來(lái)學(xué)習(xí)服務(wù)快速失敗吧。

本節(jié)主要內(nèi)容:

  • 服務(wù)快速失敗之服務(wù)熔斷機(jī)制;

  • Hystrix 應(yīng)用熔斷思想介紹。

2. 服務(wù)快速失敗之服務(wù)熔斷機(jī)制

服務(wù)熔斷機(jī)制的服務(wù)快速失敗所實(shí)現(xiàn)的目標(biāo),和我們?cè)谏鲜鲂」?jié)中所介紹的普通的服務(wù)快速失敗所實(shí)現(xiàn)的目標(biāo)相同,都是為了保證,在某一微服務(wù)發(fā)生故障時(shí),不影響后續(xù)微服務(wù)的正常運(yùn)行。

雪崩效應(yīng)產(chǎn)生原理

在上述小節(jié)中,各位同學(xué)已經(jīng)對(duì)什么是雪崩效應(yīng)有所了解,如上圖所示,我們所講的服務(wù)熔斷也是為了避免和解決雪崩現(xiàn)象的發(fā)生,只不過(guò)所采用的手段不同而已,那么接下來(lái),就讓我們來(lái)看一下基于服務(wù)熔斷機(jī)制的服務(wù)快速失敗的概念是什么吧。

針對(duì)服務(wù)熔斷機(jī)制,我們先來(lái)介紹什么是熔斷?

熔斷這一名詞,其實(shí)不是來(lái)源于計(jì)算機(jī)相關(guān)專業(yè),而是來(lái)源于電子工程相關(guān)專業(yè)。熔斷的核心是斷路器,對(duì)于斷路器來(lái)說(shuō),我們可以將斷路器理解為一根保險(xiǎn)絲,在日常生活中,當(dāng)我們家庭用電超過(guò)負(fù)載時(shí),保險(xiǎn)絲就會(huì)迅速燒斷,阻止由于電流過(guò)大而燒毀整個(gè)家庭電路。

同樣地,熔斷我們也可以像保險(xiǎn)絲那樣理解,即在計(jì)算機(jī)相關(guān)領(lǐng)域中,由于中斷上游的故障服務(wù),而保全整體的服務(wù)的措施就被稱為熔斷,而實(shí)現(xiàn)中斷上游的故障服務(wù)所采取的核心措施就是我們的斷路器。

服務(wù)熔斷機(jī)制就是把這些概念都統(tǒng)一起來(lái),然后封裝到 Hystrix 中,且最終應(yīng)用于我們的微服務(wù)項(xiàng)目中間,通過(guò)配置斷路器,來(lái)保全我們整體的微服務(wù)項(xiàng)目,這就是 Hystrix 所提供的服務(wù)熔斷機(jī)制。

Tips:
1. 在實(shí)際工作中,我們需要靈活的去配置微服務(wù)項(xiàng)目中,各個(gè)領(lǐng)域的微服務(wù)所對(duì)應(yīng)的斷路器配置,包括間隔時(shí)間、持續(xù)時(shí)間等關(guān)鍵屬性,切記不要憑感覺(jué)去配置;
2. Hystrix 本身所提供的服務(wù)熔斷機(jī)制并不是很好用,往往需要我們?cè)陧?xiàng)目中集成其他的微服務(wù)服務(wù)中間件來(lái)一起集成使用,單獨(dú)使用 Hystrix 服務(wù)熔斷機(jī)制的項(xiàng)目很少見。

3. Hystrix 應(yīng)用熔斷思想介紹

要想真正的實(shí)現(xiàn)服務(wù)熔斷機(jī)制,我們需要在項(xiàng)目中集成 Open Feign 或其他微服務(wù)遠(yuǎn)程調(diào)用組件,來(lái)結(jié)合 Hystrix 實(shí)現(xiàn),所以,在這里我們只介紹在 Hystrix 中如何簡(jiǎn)單的使用服務(wù)熔斷機(jī)制,以及其中所包含的使用思想。

在 Hystrix 中使用服務(wù)熔斷機(jī)制

我們還是以 hello 方法為例,首先在項(xiàng)目中啟用 Hystrix 。

@SpringBootApplication
@EnableHystrix
public class DemoApplication {

	public static void main(String[] args) {
		SpringApplication.run(DemoApplication.class, args);
	}

}

接著,我們繼續(xù)在項(xiàng)目啟動(dòng)類中添加啟用 Hystrix 斷路器的注解:

@SpringBootApplication
@EnableHystrix
@EnableCircuitBreaker
public class DemoApplication {

	public static void main(String[] args) {
		SpringApplication.run(DemoApplication.class, args);
	}

}

代碼解釋:

第 3 行,我們?cè)趩?dòng)類上添加了 EnableCircuitBreaker 的注解,表明該項(xiàng)目需要使用 Hystrix 斷路器。

在添加完 EnableCircuitBreaker 注解之后,我們就可以使用 HystrixCommand 注解來(lái)配置 fallbackMethod 屬性了,這樣我們就實(shí)現(xiàn)了簡(jiǎn)單地服務(wù)熔斷機(jī)制。

這種采用注解加分離屬性配置的思維方式,是 Hystrix 實(shí)現(xiàn)服務(wù)熔斷機(jī)制的核心,Hystrix 這種簡(jiǎn)單實(shí)現(xiàn)服務(wù)熔斷機(jī)制的思想,我們可以拿出來(lái)應(yīng)用到我們的實(shí)際工作中去,你會(huì)發(fā)現(xiàn),其實(shí)熔斷也就那么回事。

Tips:
1. EnableCircuitBreaker 注解,為 Hystrix 集成 Spring Cloud 的特定注解,且該注解中沒(méi)有任何屬性,如果我們想對(duì) Hystrix 的斷路器進(jìn)行配置,那么我們可以參考官方資料中的配置屬性,在項(xiàng)目的 yml 配置文件中進(jìn)行配置;
2. 如果我們沒(méi)有在啟動(dòng)類上添加 EnableCircuitBreaker 注解,即使我們配置了 HystrixCommand 注解,那也不能被稱為使用了服務(wù)熔斷機(jī)制,只能說(shuō)明我們實(shí)現(xiàn)了服務(wù)容錯(cuò)與服務(wù)降級(jí),這些概念不要混淆了。

4. 視頻演示

5. 小結(jié)

本節(jié)內(nèi)容概覽

本小節(jié)詳細(xì)介紹了基于服務(wù)熔斷機(jī)制所實(shí)現(xiàn)的服務(wù)快速失敗的概念,從什么是熔斷開始,到最后的服務(wù)熔斷機(jī)制簡(jiǎn)單實(shí)現(xiàn),旨在幫助各位同學(xué)可以很清晰地理解 Hystrix 中地服務(wù)熔斷機(jī)制,同時(shí),Hystrix 實(shí)現(xiàn)服務(wù)熔斷機(jī)制的這種思想,值得我們?nèi)W(xué)習(xí)和實(shí)踐。

至此,Hystrix 中的服務(wù)快速失敗的所有實(shí)現(xiàn)方式就已經(jīng)全部介紹完畢了,服務(wù)快速失敗作為輔助微服務(wù)項(xiàng)目正常運(yùn)行的手段,在真實(shí)項(xiàng)目中必不可少,希望各位同學(xué)都能掌握該部分內(nèi)容。