Spring Cloud微服務架構中,如果要添加一些公共的操做,比如權限校驗、審計、監控等怎麼辦?在以往的SprngMvc中,我們可以通添加過濾做一些通用的操作。那麼在Spring Cloud微服務架構中我們有沒有這樣的機制呢?當然,Zuul組件就可以幹這些事情。
什麼是Zuul?
Zuul是Netflix核心組件,是基於JVM的路由器和服務器端負載均衡器。
Zuul有什麼用?
Authentication 鑑權
Insights 審計監控
Stress Testing 壓力測試
Dynamic Routing 動態路由
Service Migration 服務遷移
Load Shedding 負載分配
Security 安全
Static Response handling 靜態響應
如何使用?
創建一個普通應用book,並註冊到eureka註冊中心
創建網關應用zuulgateway,引入Zuul組件依賴
創建網元應用zuulgateway主類
主類加上@EnableZuulProxy註解,開啟Zuul組件
@Bean註解創建兩個過濾器AwesomePreFilter、AwesomePostFilter,兩個過濾器都繼承自Zuul組件的ZuulFilter,並實現了filterType、filterOrder、shouldFilter、run方法。
配置網元應用zuulgateway代理的路由zuul.routes.books.url=http://localhost:9006,網關應用端口為9007
先後啟動eureka、book、zuulgateway應用
通過網關訪問book應用的接口服務http://localhost:9007/books/available,控制檯看到AwesomePrefilter、AwesomePostFilter打印的日誌
Zuul組件簡單使用就介紹到這裡,點贊、分享哦,謝謝~~
閱讀更多 Lucif墮落天使 的文章