黑马十次方项目day08-03SpringCloud之Netflix Zuul服务网关搭建

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_33229669/article/details/87890668

一. 创建子模块tensquare_manager

在tensquare_manager模块的pom中,引入Eureka和zuul的依赖

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

二. 创建application.yml

在tensquare_manager 工程中, 创建application.yml, 内容如下.
指定端口为9011, 指定服务名称为 tensquare-manager. 并注册进eureka.

最底部为zuul的配置,主要配置了通过网关访问每一个微服务时的路径,和路径对应的微服务的名称id.

server: 
  port: 9011
spring: 
  application:  
    name: tensquare-manager #指定服务名
eureka:
  client:
    service-url:
      defaultZone: http://127.0.0.1:6868/eureka/  #此处为eureka的服务端地址
  instance:
    prefer-ip-address: true  # 此处配置项的含义是,部署线上时,模块之间可以跨域访问
zuul:
  routes:
    tensquare-base:
      path: /base/**  # 访问的路径, 如果访问的路径是以base开头的 ,那么就会跳转到tensquare-base微服务. #配置请求URL的请求规则
      serviceId: tensquare-base  #指定跳转的服务名称. 指定Eureka注册中心中的服务id

三. 编写启动类

在com.tensquare.manager.ManagerApplication 编写启动类.

内容如下, 注意,主要为在启动类上写上@EnableZuulProxy注解,代表开启了Zuul

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.eureka.EnableEurekaClient;
import org.springframework.cloud.netflix.zuul.EnableZuulProxy;

/**
 * 类名称:ManagerApplication
 * 类描述:zuul 服务的启动类
 *
 * @author: taohongchao
 * 创建时间:2019/2/23 11:48
 * Version 1.0
 */
@SpringBootApplication
@EnableEurekaClient
@EnableZuulProxy
public class ManagerApplication {

    public static void main(String[] args){
        SpringApplication.run(ManagerApplication.class);
    }

}

四.测试

分别开启tensquare_eureka,tensquare_base,tensquare_manager 三个模块.
端口分别对应如下

发送如下的get请求
http://localhost:9011/base/label
其中9011为Zuul的端口,而base为访问基础微服务的路径.label为调用查询所有标签的接口
响应数据如下,代表成功通过zuul网关,访问了基础微服务.

猜你喜欢

转载自blog.csdn.net/qq_33229669/article/details/87890668