Spring Cloud实战(七)-Spring Cloud Netflix Zuul

概要

  • 什么是Spring Cloud Netflix Zuul?html

  • 怎么用 Spring Cloud Netflix Zuul?git

什么是Spring Cloud Netflix Zuul?

Zuul is a JVM based router and server side load balancer by Netflix.
Zuul 是一个基于JVM的路由器和服务端负载均衡器,它默认包含Ribbon和Hystrix.它其实就是一个API Gateway的部分实现,详见博文
为了解决如下问题的组件:github

  • 身份验证spring

  • 压力测试bootstrap

  • 动态路由segmentfault

  • 服务迁移安全

  • 安全app

  • 静态响应处理负载均衡

  • 流量控制ide

  • Load Shedding

  • Canary Testing

怎么用Spring Cloud Netflix Zuul?

百说不如一run,构造一个例子来实现,此次的例子很简单,就是启动一个sentence的Zuul代理,经过Zuul的端口访问指定word服务.

  • 基于实战四的例子

  • 正常启动Eureka Server

  • 正常启动Eureka Client,此时咱们这里只启动一个noun服务

  • 为Eureka Sentence添加Pom依赖

<dependency>
        <groupId>org.springframework.cloud</groupId>                         <artifactId>spring-cloud-starter-zuul</artifactId>
    </dependency>
  • 在Eureka Sentence的Application加上@EnableZuulProxy注解

  • 在Eureka Sentence的Application加上如下代码实现ETag功能

@Bean
    public Filter shallowEtagHeaderFilter() {
        return new ShallowEtagHeaderFilter();
    }
  • Eureka Sentence的bootstrap.yml以下

spring:
  application:
    name: sentence
server:
  port: 8080
eureka:
  client:
    service-url:
      defaultZone: http://127.0.0.1:8010/eureka/

特别感谢 kennyk65
Spring Cloud 中文用户组 31777218
Spring-Cloud-Config 官方文档-中文译本 (本人有参与,哈哈)
Spring Cloud Netflix 官网文档-中文译本
本文实例github地址 mmb-zuul

相关文章
相关标签/搜索