当前位置: 萬仟网 > IT编程>软件设计>架构 > spring cloud微服务快速教程之(五) ZUUL API网关中心

spring cloud微服务快速教程之(五) ZUUL API网关中心

2020年01月08日  | 萬仟网IT编程  | 我要评论

0-前言

  我们一个个微服务构建好了,外部的应用如何来访问内部各种各样的微服务呢?在微服务架构中,后端服务往往不直接开放给调用端,而是通过一个api网关根据请求的url,路由到相应的服务。当添加api网关后,在第三方调用端和服务提供方之间就创建了一个代理层,这个代理层直接与调用方通信进行权限控制,后将请求均衡分发给后台服务端。

  zuul:就是一个api中间代理层,可以用来执行认证、动态路由、服务前移、负载均衡、安全、动态响应处理等;比如/api/user转发到到user服务,/api/order转发到到shop服务。zuul默认使用ribbon实现负载均衡;

 

一、zuul的简单使用

1.1、创建zuul模块,添加依赖:

        <dependency>
            <groupid>org.springframework.cloud</groupid>
            <artifactid>spring-cloud-starter-netflix-zuul</artifactid>
        </dependency>

1.2、创建配置文件,增加配置

server:
  port: 8081
spring:
  application:
    name: zuul
# 配置eureka地址
eureka:
  client:
    service-url:
      defaultzone: http://localhost:8761/eureka/
  instance:
    prefer-ip-address: true
# 构建路由地址
zuul:
  prefix: /api
  routes:
    # 这里可以自定义
    user:
      # 匹配的路由规则
      path: /user/**
      # 路由的目标服务名
      serviceid: user
    order:
      # 匹配的路由规则
      path: /order/**
      # 路由的目标服务名
      serviceid: order

1.3、启动类增加 @enablezuulproxy 注解

@springbootapplication
@enablezuulproxy
@enableeurekaclient
public class application
{
    public  static void main(string[] args)
    {
        springapplication.run(application.class);
    }
}

完成

1.4、运行测试

 

 

 

 可以看到,zuul已经按照配置文件的路由规则进行了路由转发,并对服务实现了负载均衡;

zuul简单使用完毕;

 gitdemo地址:

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
Copyright © 2020  萬仟网 保留所有权利. 粤ICP备17035492号-1
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com