• SpringCloud学习笔记(17)----Spring Cloud Netflix之服务网关Zuul的使用


    1. 什么时候Zuul?

      Zuul是一个基于jvm路由和服务端的负载均衡器,在云平台上提供动态路由,监控,弹性,安全等边缘服务的框架。

      路由功能:相当于nginx的反向代理

      比如: / 可能需要映射到你的web应用,/api/users/映射到用户服务 ,/api/shop映射到商城服务。

    2. 使用方式

      新建项目spring-cloud-04-zuul

      添加依赖

      <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
            </dependency>
            <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-starter-netflix-zuul</artifactId>
            </dependency>

      配置配置文件

    server.port=9876
    
    spring.application.name=spring-cloud-zuul
    
    eureka.client.service-url.defaultZone=http://localhost:8761/eureka/
    
    eureka.client.registry-fetch-interval-seconds=30
    
    eureka.instance.lease-renewal-interval-in-seconds=15
    
    eureka.instance.lease-expiration-duration-in-seconds=45

      在zuul的启动类中添加@EnableZuulProxy注解,启动注册中心、消费者和生产者

      使用zuul访问

      http://localhost:9876/spring-cloud-provider/api/user/1

      http://localhost:9876/spring-cloud-consumer/user/1

      zuul将会将请求分别路由到生产者和消费者服务器中。

      说明:zuul可以调用提供者,也可以调用消费者,这里没有固定的规则,符合业务需求即可。很多时候,提供者也会调用到另外的提供者(可能是多个),这里建议,最好不要超过三个应用之间的调用。

      例如:一个下单api服务,当用户进行下单就会调用到订单服务,订单服务里面会调用到用户服务进行用户信息的操作,也会调用积分服务进行积分的操作,也可能会有日志服务进行日志记录,最终才能下单。

  • 相关阅读:
    二叉树的最大深度与最小深度
    【C++学习笔记】由 const char* 引出的一系列问题
    【C++学习笔记】标准库容器Vector可变长度实现原理
    Python数据可视化之Matplotlib学习笔记
    python读取excel文件—xlrd
    ubuntu14.04下嵌入式工作环境搭建
    ubuntu14.04下交叉编译器的安装
    挂载nfs系统问题之: Root-NFS: Server returned error -13 while mounting
    关于开发板不能ping通外网IP
    Socket的协议地址属性
  • 原文地址:https://www.cnblogs.com/Eternally-dream/p/9869208.html
Copyright © 2020-2023  润新知