1.eureka註冊中心需要對外暴露,其他服務需要註冊到註冊中心
2.註冊中心會將服務的位址列表傳送給訂閱服務的消費者
3.各種服務需要定期向eureka傳送心跳,重新整理自己的狀態
4.服務下線則註冊中心就會剔除掉服務
5.如果某個服務無法正常工作,但並沒有向伺服器提出下線,則會建立乙個定時任務,每隔60s傳送一次確認,如果90s沒有響應則剔除.
6.如果15分鐘之內某個服務的續約成功率不足85%,則會剔除
作用:用來控流,控制,路由
1.身份驗證與安全,識別訪問某個資源的需求,不滿足則拒絕訪問
2.審查,監控
3.動態路由
4.負載均衡
5.限流
ribbon預設採用輪訓演算法,其他演算法還有hash、權重、一致性hash
解決了不同服務之間的相互呼叫問題,feign自動實現了負載均衡,熔斷
@enablediscoveryclient
@enablefeignclients
@enablecircuitbreaker
//開啟斷路器
public
class
}
@restcontroller
public
class
usercontroller")
@hystrixcommand
(fallbackmethod =
"showgoodbyidfallback"
)public list
showgoodbyid
(@pathvariable integer id)
return goods;
} public string test1()*/
public list
showgoodbyidfallback
(integer id)
}
@feignclient
(value =
"goodservice"
,fallback = goodfeignimpl.
class
)public
inte***ce
goodfeign")
public list
getgoodbyid
(@pathvariable integer id)
;/* @hystrixcommand(fallbackmethod ="testfallback" )
public string test();*/
}
@component
public
class
goodfeignimpl
implements
goodfeign
}
1.執行緒隔離
為每乙個服務分配一定數量的執行緒池,當執行緒池用完了,等一段時間還是沒有通過,則服務請求失敗斷開連線
2.服務降級
為每個服務自定義乙個降級方法,當服務出錯時提高使用者的使用體驗
3.服務熔斷
最近20次請求中,如果超過一半的請求失敗,則開啟斷路器,後面的請求直接拒絕訪問.
Spring cloud 五大元件
1.zuul 閘道器 2.eureka 註冊中心 3.ribbon 負載均衡 4.feign 服務呼叫 5.hystix 熔斷器 1.zuul閘道器 動態路由 為什麼會出現乙個zuul閘道器?因為我們所用的微服務的框架,寫好的每乙個服務可以通過外面直接請求,這樣的話對外暴露會有安全性的問題。那麼怎麼...
SpringCloud五大核心元件
微服務 springcloud 很多朋友想學習 spring cloud 微服務技術,但又不知道如何著手,本篇將對 spring cloud 微服務的五大核心元件進行介紹!1 netflix eureka 服務發現,註冊中心 同源技術 1.consul 2.nacos 阿里的 既可以做服務註冊也可以...
springcloud五大核心元件
spring cloud是一系列框架的有序集合。它利用spring boot的開發便利性巧妙地簡化了分布式系統基礎設施的開發,如服務發現註冊 配置中心 訊息匯流排 負載均衡 斷路器 資料監控等,都可以用spring boot的開發風格做到一鍵啟動和部署。spring cloud並沒有重複製造輪子,它...