學習主題:hystrix
解決災難性雪崩效應-服務熔斷-服務熔斷處理
熔斷引數circuitbreaker.enabled的作用是什麼?
熔斷引數circuitbreaker.requestvolumethreshold的作用是什麼?
熔斷引數circuitbreaker.sleepwindowinmiliseconds的作用是什麼?
熔斷引數circuitbreaker.errorthresholdpercentage的作用是什麼?
熔斷引數circuitbreaker.forceopen的作用是什麼?
熔斷引數circuitbreaker.forceclosed的作用是什麼?
解決災難性雪崩效應-隔離機制-執行緒池隔離-建立專案
什麼是執行緒池隔離?
執行緒池隔離的優點是什麼?
執行緒池隔離的缺點是什麼?
將多個服務介面同時放到乙個執行緒池中 ,當乙個服務併發量急劇增加時 ,執行緒池會癱瘓,另乙個執行緒也會完蛋
**哪個服務介面執行緒併發量大 ,將併發量大的服務介面執行緒單獨拉出來放到另乙個執行緒池中 , 減少伺服器的壓力,同時這個服務出錯時也不會影響其他服務
解決災難性雪崩效應-隔離機制-執行緒池隔離-執行緒池隔離處理
@hystrixcommand註解中的threadpoolproperties屬性的作用是什麼?
@hystrixproperty註解的作用是什麼?
執行緒池隔離引數groupkey的作用是什麼?
執行緒池隔離引數commandkey的作用是什麼?
執行緒池隔離引數threadpoolkey的作用是什麼?
執行緒池隔離引數coresize的作用是什麼?
執行緒池隔離引數maxqueuesize的作用是什麼?
執行緒池隔離引數queuesizerejectionthreshold的作用是什麼?
執行緒池隔離引數keepalivetimeminutes的作用是什麼?
解決災難性雪崩效應-隔離機制-訊號量隔離-建立專案
什麼是訊號量隔離?
當consumer傳送大量請求到provider時 ,會訪問訊號量池
解決災難性雪崩效應-隔離機制-訊號量隔離-訊號量隔離處理
訊號量隔離引數execution.isolation.strategy的作用是什麼?
訊號量隔離引數execution.isolation.thread.timeoutinmiliseconds的作用是什麼?
訊號量隔離引數execution.isolation.thread.interruptontimeout的作用是什麼?
訊號量隔離引數execution.isolation.semaphore.maxconcurrentrequests的作用是什麼?
訊號量隔離引數fallback.isolation.semaphore.maxconcurrentrequests的作用是什麼?
執行緒池隔離和訊號量隔離的區別
執行緒池隔離與訊號量隔離有什麼區別?
什麼情況下使用執行緒池隔離?
什麼情況下使用訊號量隔離?
feign的服務降級處理-建立專案
feign的服務降級處理-服務降級處理
修改業務層**,在feign中配置服務降級。
修改全域性配置檔案
#feign預設不開啟hystrix,為false
feign:
hystrix:
enabled: true
介面中指定服務專案名,托底資料類
@feignclient(name="ego-provider-provider",fallback=consumerserviceimplrallback.class)//使用@feignclient註解 name屬性指定服務提供者的應用名
啟動服務測試效果。
服務降級後的異常記錄
為什麼要記錄降級後的異常資訊。
在使用feign的開發過程中 ,出現了托底資料 ,
可以通過這種方式獲取異常的相關資訊 ,幫助我們解決異常
在專案中開啟視覺化的資料監控hystrix-dashboard
什麼是hystrix-dashboard?
@enablehystrix註解的作用是什麼?
@enablehystrixdashboard註解的作用是什麼?
hystrix-dashboard 是一款針對 hystrix 進行實時監控的工具,通過 hystrix dashboard 我們可以在直觀地看到各 hystrix command 的請求響應時間, 請求成功率等資料。
@enablehystrix 開啟資料監控
@enablehystrixdashboard 開啟圖形化介面
搭建hystrix-dashboard資料監控中心
建立資料監控中心服務。
修改pom檔案,新增actuator啟動器,新增hystrix啟動器、hystrix-dashboard啟動器。
需改啟動類新增開啟hystrix與hystrixdashboard。
按照啟動順序啟動服務。
訪問hystrixdashboard服務,檢視資料。
server:
port: 9999
spring:
name: eureka-consumer-ribbon-dashboard-view
#可有可無,新增eureka的目的是方便管理服務
建立turbine聚合伺服器
turbine的作用是什麼?
@enableturbine註解的作用是什麼?
turbine對監控服務做了聚合 ,但是仍需要依賴dashboard
@enableturbine:開啟聚合服務
使用turbine對多個服務進行監控
turbine預設監聽埠是多少?
@enablehystrixdashboard註解的作用是什麼?
@enablehystrixdashboard:開啟資料監控的圖形化介面
使用turbine監控集群
通過turbine檢視集群監
Hystrix降級與熔斷
即熔斷器,一種保護機制 服務降級 請求故障的時候,不會被阻塞,也不會無休止的等待,至少可以看到乙個執行結果。由服務的呼叫方來引入依賴 org.springframework.cloud spring cloud starter netflix hystrix 正確的方法上加上註解 hystrixco...
Hystrix 服務熔斷降級
斷路器狀態 hystrix屬於spring cloud netflix中的套件之一,spring cloud netflix其中還包括eureka,feign,ribbon,zuul,bus。本文僅簡單講一下hystrix這個熔斷降級框架。為什麼不講sentinel呢,因為sentinel的官方文件...
Hystrix微服務降級和熔斷
1.微服務降級一般是在客戶端呼叫微服務的時候,出現了服務雪崩的情況,所謂的服務雪崩就是在同乙個tomcat容器中,接受了高併發的訪問,而導致的響應超時,而在整個微服務的專案中,出現了乙個微服務的響應超時而導致的服務雪崩,就會使整個系統崩盤,那麼我們的使用者在傳送請求的時候,返回的響應超時的提示資訊肯...