1.zuul:閘道器
2.eureka:註冊中心
3.ribbon:負載均衡
4.feign:服務呼叫
5.hystix:熔斷器
1.zuul閘道器 (動態路由)
為什麼會出現乙個zuul閘道器?
因為我們所用的微服務的框架,寫好的每乙個服務可以通過外面直接請求,這樣的話對外暴露會有安全性的問題。那麼怎麼辦?
第乙個辦法就是在每乙個服務外面加一層校驗邏輯,那樣會顯得比較麻煩
第二個辦法就是做乙個圍牆,將校驗邏輯寫在圍牆裡面,然後再提供乙個入口,再將微服的位址都暴露給zuul閘道器,zuul閘道器再將位址暴露給外界,外界再通過位址請求
閘道器的核心功能是:過濾和路由
2.eureka:註冊中心
註冊中心有什麼作用?
它是乙個註冊服務和拉取服務的過程
有乙個呼叫者和乙個提供者還可以做到監控服務
在預設的時間內會傳送乙個心跳週期30秒,90秒如果沒有傳送就會認為服務宕機。
3.ribbon:負載均衡
負載均衡的就是建立多個同樣的服務,當其中乙個服務掛掉了那麼其他的服務將會接替它,負載均衡底層有兩種演算法,一種是輪播,一種是隨機
4.feign:服務呼叫
feign的作用就是偽裝請求,將rest的請求進行隱藏,偽裝成類似springmvc的controller一樣。你不用再自己拼接url,拼接引數等等操作,一切都交給feign去做。
5.hystix:熔斷器
為什麼會出現熔斷器?
熔斷降級
1先說一下降級
hystrix為每乙個微服務提供乙個小執行緒池,如果執行緒池已滿呼叫將被立即拒絕。預設不採用排隊加速失敗判斷時間。
服務降級會導致請求失敗,但是不會導致阻塞,對其他的服務沒有什麼影響。
2.熔斷
熔斷是在降級的基礎上來實現的,熔斷分為三種狀態
第一種:熔斷器是關閉的
第二種:熔斷器是開啟,那麼所有的請求將會被降級,當一定時間內失敗次數達到了閾值,那麼將會被熔斷。
第三種:半開狀態。
SpringCloud五大核心元件
微服務 springcloud 很多朋友想學習 spring cloud 微服務技術,但又不知道如何著手,本篇將對 spring cloud 微服務的五大核心元件進行介紹!1 netflix eureka 服務發現,註冊中心 同源技術 1.consul 2.nacos 阿里的 既可以做服務註冊也可以...
springcloud五大核心元件
spring cloud是一系列框架的有序集合。它利用spring boot的開發便利性巧妙地簡化了分布式系統基礎設施的開發,如服務發現註冊 配置中心 訊息匯流排 負載均衡 斷路器 資料監控等,都可以用spring boot的開發風格做到一鍵啟動和部署。spring cloud並沒有重複製造輪子,它...
spring cloud五大基本元件
1.eureka註冊中心需要對外暴露,其他服務需要註冊到註冊中心 2.註冊中心會將服務的位址列表傳送給訂閱服務的消費者 3.各種服務需要定期向eureka傳送心跳,重新整理自己的狀態 4.服務下線則註冊中心就會剔除掉服務 5.如果某個服務無法正常工作,但並沒有向伺服器提出下線,則會建立乙個定時任務,...