為了方便客戶端調用微服務,所以設計出了網關。在微服務實例地址發生改變的情況下,客戶端調用服務要能夠不受影響。
網關可以完成的功能:路由,反向代理,日志記錄,權限控制,限流
在本例子中
Eureka 服務注冊中心
Zuul網關,要將Zuul注冊到服務注冊中心
Producer , 服務提供者,實例名為spring-cloud-producer,注冊到服務注冊中心
Producer2,服務提供者,實例名為spring-cloud-producer,注冊到服務注冊中心
把這四個應用啟動后
在游覽器訪問http://localhost:8888/spring-cloud-producer/hello?name=irish
可以看到請求被動態的路由到到Producer和Producer2
這里Zuul注冊到Eureka后,Zuul會代理所有注冊到Eureka Server的微服務,並且Zuul的默認路由規則如下:http://ZUUL_HOST:ZUUL_PORT/微服務在Eureka上的serviceId/**會被轉發到serviceId對應的微服務,並可做負載均衡
github下載地址:https://github.com/jake1263/SpringCloud/tree/master/Zuul網關路由作用/gateway-service-zuul