springcloud-zuul路由网关
生活随笔
收集整理的這篇文章主要介紹了
springcloud-zuul路由网关
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
路由網關(zuul)
在微服務架構中,需要多個基礎的服務治理組件,包括服務注冊與發現、服務消費、負載均衡、斷路器、智能
路由、配置管理等,由這個基礎組件相互協作,共同組建了一個簡單的微服務系統。一個簡單的微服務系統如下
圖
總結:在Spring Cloud微服務系統中,一種常見的負載均衡方式是,客戶端的請求先先經過負載均衡(zuul、
Ngnix),再到達服務網關(zuul集群),然后再到具體的服務。服務統一注冊到高可用的服務注冊中心集群,服務的所有的配置文件由配置服務管理,配置服務的配置文件倉庫,方便開發人員隨時改配置。
1.Zuul 簡介
Zuul的主要功能是路由轉發和過濾器。路由功能是微服務的一部分,比如/api/user轉發到到user服
務,/api/shop轉發到到shop服務。zuul默認和Ribbon結合實現了負載均衡的功能
1.搭建Zull
<dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-zuul</artifactId></dependency>2.編寫Zuul的入口類
@EnableZuulProxy@EnableEurekaClient@SpringBootApplicationpublic class ServiceZuulApplication {public static void main(String[] args) {SpringApplication.run(ServiceZuulApplication.class, args);} }3.application.yml配置文件
eureka.client.serviceUrl.defaultZone: http://localhost:8080/eureka/ server.port: 8769 spring.application.name: service-zuul#關閉安全認證 management.security.enabled=false #設置斷路時間 hystrix.command.default.execution.isolation.thread.timeoutInMilliseconds=5000注意:zuul中默認有hystrix斷路器,如果響應時間超過1秒,斷路器打開,這幾乎是不可能的,所以必須調整斷路時間
使用:當前zuul使用默認路由規則,訪問:http:zuul端口/服務實例名/控制器方法
這是單節點的主流配置,如果需要配置zuul集群,需要配置Nginx代理,配置分發規則。從圖一可以看出微服務當前的架構經過三次的負載均衡:
- Nginx--->Zuul
- Zuul----->Client(分發)
- Client--->Client (Ribbon)
轉載于:https://www.cnblogs.com/mzc1997/p/10262091.html
總結
以上是生活随笔為你收集整理的springcloud-zuul路由网关的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 做梦梦到自己做梦是什么意思
- 下一篇: 404. Sum of Left Lea