zoukankan      html  css  js  c++  java
  • springcloud之zuul

    案例代码:https://gitee.com/menbbo/springclouddemo.git

    zuul路由网关

    什么是zuul?

    zuul最主要的两个功能是路由和过滤。其中路由功能负责将外部请求转发到具体的微服务实例上,是实现外部访问统一入口的基础。过滤功能负责对请求的处理过程进行干预,是实现请求校验,服务聚合功能的基础。Zuul与Eureka进行整合,将Zuul自身注册为Eureka服务治理下的应用,同时从Eureka中获得其他微服务的消息,也即以后的访问微服务都是通过zuul跳转后获得。

    zuul工作原理

     

     zuul的核心是一系列的filters,作用与servlet类似。

    springcloud之zuul的使用

     1.父项目下创建springcloud_zuul模块 引入maven依赖

        <dependency>
                <groupId>org.springframework.cloud</groupId>
                <artifactId>spring-cloud-starter-zuul</artifactId>
                <version>1.4.6.RELEASE</version>
         </dependency>

    2.配置application.properties

    server.port=9527 
    spring.application.name=springcloud_zuul
    eureka.client.service-url.defaultZone= http://localhost:8761/eureka
    eureka.instance.instance-id=springcloud
    eureka.instance.prefer-ip-address=true
    info.app.name=men-springcloud
    zuul.routes.mydept.serviceId=client
    #代替微服务名 zuul.routes.mydept.path=/springcloudzuul/**

    3.创建启动类

    @SpringBootApplication
    @EnableZuulProxy
    public class SpringcloudZuulApplication {
        public static void main(String[] args) {
            SpringApplication.run(SpringcloudZuulApplication.class, args);
        }
    }

    4.其他模块

    创建eureka_server、consumer01、product01模块。依次启动eureka_server等几个模块。

    访问localhost:8761可以看到3个服务都已注册到eureka中。

     原来服务访问路径:

    使用网关之后的访问路径:springcloudzuul替代微服务的名称,端口为zuul的端口号

    如果application.properties中添加配置

    #访问路径的前缀
    zuul.prefix=/menbbo/

    其访问路径在服务名之前加上该路径前缀:

  • 相关阅读:
    一个网络传输框架——zeroMQ 调研笔记
    Node.js的cluster模块——Web后端多进程服务
    boost::spirit unicode 简用记录
    HTTP的长连接和短连接——Node上的测试
    MongoDB 驱动以及分布式集群读取优先级设置
    Lua知识备忘录
    MongoDB使用小结:一些常用操作分享
    此项目与Visual Studio的当前版本不兼容的报错
    @Controller和@RestController的区别
    SQLSERVER中计算某个字段中用分隔符分割的字符的个数
  • 原文地址:https://www.cnblogs.com/menbo/p/13532164.html
Copyright © 2011-2022 走看看