Spring-Boot

SpringCloud初探(二) - 添加zuul网关服务

2019-05-10  本文已影响6人  LssTechnology
前言
一、项目搭建
1.1、项目目录如图:
1.png
1.2、 pom.xml配置:
<dependencies>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
            <version>${nacos.version}</version>
        </dependency>
        <!--引入zuul做请求转发-->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-netflix-zuul</artifactId>
            <version>2.0.1.RELEASE</version>
        </dependency>
    </dependencies>

注册服务为nacos,引入zuul网关依赖

1.3、 application.yml 配置
spring:
  application:
    name: test-gateway
  cloud:
    nacos:
      discovery:
        server-addr: localhost:8848
server:
  port: 16000

#zuul转发规则配置
zuul:
  host:
    socket-timeout-millis: 60000
    connect-timeout-millis: 10000
  #关闭请求转发重试机制(全局关闭)
  retryable: false
  #添加默认前缀
  prefix: /api
  #不移除前缀
  strip-prefix: true
  #重新定义敏感请求头信息,放行全部的请求头部信息
  sensitive-headers:
  #解决重定向跳转路径问题
  add-host-header: true
  #配置路由git
  routes:
    client:
      path: /client-01/**
      serviceId: client-01
      strip-prefix: true

#ribbon的全局配置项
ribbon:
  #http请求连接建立超时时间(ms)
  ConnectTimeout: 10000
  #http请求处理超时时间(ms)
  ReadTimeout: 15000
  #默认重试次数
  MaxAutoRetries: 1
  #默认尝试的实例数
  MaxAutoRetriesNextServer: 4
二、搭建client-01服务
2.1、服务目录
2.png
2.2、pom.xml
<properties>
        <nacos.version>0.2.1.RELEASE</nacos.version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
            <version>${nacos.version}</version>
        </dependency>
    </dependencies>
2.3、application.yml
server:
  port: 16001

spring:
  cloud:
    nacos:
      discovery:
        server-addr: localhost:8848
  application:
    name: client-01
2.4、TestController.java
package com.lss.controller;

import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class TestController {
    @GetMapping("/test")
    public String test(){
        System.out.println("16001");
        return "16001";
    }
}
三、启动test-gateway 和 client-01 服务

参考 https://www.jianshu.com/p/717bd6117128 进入nacos服务中心,发现
test-gateway 和 client-01 服务都被注册成功

以上只是网关的服务转发功能,希望对你有所帮助,如有不对,欢迎指正
上一篇 下一篇

猜你喜欢

热点阅读