• 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/

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

  • 相关阅读:
    Python 之 raw_input()与input()区别
    Python基础语法
    在Cloudera Hadoop CDH上安装R及RHadoop(rhdfs、rmr2、rhbase、RHive)
    MapReduce 过程详解
    Cloudera Manager and CDH安装及配置
    RFC 目录
    聊一聊 tcp拥塞控制 九 fack
    聊一聊tcp 拥塞控制 八 相关数据结构&& 概念
    聊一聊 tcp 拥塞控制 七 转载
    udp connected socket
  • 原文地址:https://www.cnblogs.com/menbo/p/13532164.html
Copyright © 2020-2023  润新知