【SpringCloud NetFlix】 网关Zuul(一)介绍与使用

介绍

​ 是Netflix的一个子项目

​ 提供代理、过滤、路由等功能

编写第一个Zuul程序

​ 建立服务项目:简单写一个restfull请求

@SpringBootApplication
@RestController
public class SourceApp {

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

    @RequestMapping(value = "/hello/{name}", method = RequestMethod.GET)
    public String hello(@PathVariable String name) {
        return "hello, " + name;
    }

}

​ 建立网关项目:引入依赖,开启网关,配置转发规则

        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-zuul</artifactId>
        </dependency>
        <!--zuul底层采用httpclient转发请求的-->
        <dependency>
            <groupId>org.apache.httpcomponents</groupId>
            <artifactId>httpclient</artifactId>
            <version>4.5.2</version>
        </dependency>
@SpringBootApplication
//开启网关
@EnableZuulProxy
public class RouterApp {

    public static void main(String[] args) {
        SpringApplication.run(RouterApp.class, args);
    }
}
server:
  port: 9000
zuul:
  routes:
    zlt:
      url: http://localhost:8080

启动并访问服务项目:http://localhost:8080/hello/zlt

启动并访问网关项目:http://localhost:9000/zlt/hello/zlt

项目结构

这里写图片描述
Zuul运行机制参考源码:ZuulServlet

这里写图片描述

以上为疯狂SpringCloud微服务架构实战学习笔记
感谢杨恩雄老师:https://my.oschina.net/JavaLaw

猜你喜欢

转载自blog.csdn.net/zlt995768025/article/details/81697599