Spring Cloud之Zuul(一):编写Zuul微服务网关

主题

编写Zuul微服务网关

前言

网关的概念大家可以点击这里了解,或者等待米兜好文章更新。本实例主要是将Zuul注册到Eureka Server上,并做一些案例测试。

内容

1.新建项目

cloud-register-gateway-zuul微服务

2.引入依赖


   org.springframework.cloud
   spring-cloud-starter-netflix-zuul




   org.springframework.cloud
   spring-cloud-starter-netflix-eureka-client

3.启动类添加@EnableZuulProxy注解

4.application.yml配置

server:
 port: 8023

spring:
 application:
   name: cloud-register-gateway-zuul

eureka:
 client:
   serviceUrl:
     defaultZone: http://127.0.0.1:8001/eureka/

5.启动项目

(1)cloud-discovery-eureka(port=8001)

(2)cloud-register-user(port=8002)

(3)cloud-register-gateway-zuul(port=8023)

(4)cloud-register-consumer-ribbon(port=8007)

6.结果测试

测试一:路由规则

(1)访问http://127.0.0.1:8023/cloud-register-user/1 ,结果如下:

Spring Cloud之Zuul(一):编写Zuul微服务网关_第1张图片

(2)访问http://127.0.0.1:8023/cloud-register-consumer-ribbon/log-user-instance ,结果如下: 

Spring Cloud之Zuul(一):编写Zuul微服务网关_第2张图片

由上可见,网关都可以访问端口后的服务,说明默认情况下,路由能按如下方式转发:

http://ZUUL_HOST:ZUUL_PORT/服务注册在EureKa上的servicId/**

测试二:负载均衡

启动多个cloud-register-user微服务,然后按一方式访问,看看后台输出,这个我就不操作了,大家自个试试吧。

测试三:Hystrix容错和监控

在一的基础上,多启动cloud-hystrix-dashboard微服务。

(1)浏览器地址栏输入http://localhost:8019/hystrix

(2)在Hystrix Dashboard输入http://localhost:8023/hystrix.stream和主题example zuul,结果如下:

Spring Cloud之Zuul(一):编写Zuul微服务网关_第3张图片

 说明了本网关整合了Hystrix。

源码获取

1.gitee:https://gitee.com/StarskyBoy/cloud

2.github: https://github.com/StarskyBoy/cloud

获取更多信息,请扫我

Spring Cloud之Zuul(一):编写Zuul微服务网关_第4张图片

你可能感兴趣的:(Spring,Cloud)