5.Spring Cloud 网关Zuul使用入门

本文介绍了Spring Cloud Zuul的使用,包括作为微服务统一入口的功能,如何上手配置,结合RateLimit进行限流的实现,以及Zuul过滤器的四种类型的详解和示例。内容涵盖动态路由、认证鉴权、限流策略以及过滤器的预处理、路由、后处理和错误处理场景。
摘要由CSDN通过智能技术生成

5.Spring Cloud 网关Zuul使用入门

简介

Zuul是Netflix开源的网关,能够与Eureka、Ribbon、Hystrix 等组件配合使用(都是自家的)。其核心是过滤器,使用这些过滤器我们可以:动态路由、请求监控、认证鉴权、压力测试、灰度发布。

从使用角度,为全部服务提供了统一的入口,保障后台服务安全性的同时,使后台服务与客户端解耦。

上手
  1. 使用Idea快捷创建Spring Boot 项目,除去勾选Spring Web,Eureka Discovery Client外,额外勾选Zuul。

    在这里插入图片描述

    maven依赖

    <dependency>
    	<groupId>org.springframework.cloud</groupId>
    	<artifactId>spring-cloud-starter-netflix-zuul</artifactId>
    </dependency>
    
  2. 启动类添加 @EnableZuulProxy启用Zuul

  3. 配置文件添加微服务映射

    在这里插入图片描述

    #微服务映射
    zuul:
      routes:
        #自定义网关别名
        user-service-api:
          #映射路径
          path: /us/**
          #微服务名称,名字与其他微服务中配置的spring.application.name保持一致
          serviceId: user-service
    
        business-service-api:
          path: /bs/**
          serviceId: business-service2
    
  4. 测试运行

    如配置文件中所添加的,继续沿用前面几篇博客中的例子,user-service,business-service2。这里为了方便,我将eureka-server部署到了Linux服务器中,这里直接访问查看所有的服务是否已经注册到配置中心。

    在这里插入图片描述

    先访问user-service中的请求

    在这里插入图片描述

    访问business-service2中的请求

    在这里插入图片描述

  5. 负载均衡

    Zuul本身也是一个微服务,内置Ribbon,Hystrix。

    配置负载均衡策略同博客中讲解的一致。可配置全局,配置单独的某一具体微服务。

    参照2.Spring Cloud Ribbon 负载均衡使用入门

  6. 熔断

    Spring Cloud Zuul 内置了Hystrix,我们这里只需要实现FallBackProvider接口,实现接口中的两个方法。

    在这里插入图片描述
    这里以user-service为例:

    @Component
    public
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值