笔记

2、SpringCloud的网关组件zuul基本使用
    简介:讲解zuul网关基本使用

1、加入依赖

2、启动类加入注解 @EnableZuulProxy
        默认集成断路器  @EnableCircuitBreaker

默认访问规则  
            http://gateway:port/service-id/**

例子:默认 /order-service/api/v1/order/save?user_id=2&product_id=1
                     自定义 /xdclass_order/api/v1/order/save?user_id=2&product_id=1

自定义路由转发:
            zuul:
             routes:
                 order-service: /apigateway/**

环境隔离配置:
            需求 :不想让默认的服务对外暴露接口
                /order-service/api/v1/order/save

配置:
            zuul: 
                ignored-patterns:
                    - /*-service/api/v1/order/save

开始

新建项目之前回复一些之前模拟的数据、例如ProductService里面延迟2秒的这里注释掉。

新建项目



需要往注册中心注册。

选择网关 Zuul

最终选择这两个


默认的依赖在创建项目的时候已经加载进来了

配置文件改成yml格式的

需要给应用起个名称。spring.a会有只能提示,选择application.name第一个 就可以了


指定注册中心的地址

启动类加注解

EnableZuulProxy的注解

启动应用

api-gateway已经注册到注册中心

默认访问规则  
            http://gateway:port/service-id/**

例子:默认 /order-service/api/v1/order/save?user_id=2&product_id=1
                     自定义 /xdclass_order/api/v1/order/save?user_id=2&product_id=1

这是原来订单的服务访问的地址

通过网关访问,订单服务的接口。现在就是经过Zuul网关的了

原来直接访问productService的方式


通过网关访问productService

自定义路径规则



apigateway就替换了order-service

重启应用进行测试
默认是用order-service访问的

换成apigateway


忽略掉product-service.商品服务不对外给提供路由

重启服务
订单服务是可以正常的访问的

product-service原先可以访问,现在访问不到

忽略掉:/*-service/**
一个*是匹配两个斜线之间的所有内容,**是匹配斜线后的所有内容。

重启应用
 


把商品服务也加进来了

商品服务的列表数据接口也可以访问到了


直接通过端口访问product的服务也是可以的 不通过网关。端口8773

环境隔离

环境隔离配置:
            需求 :不想让默认的服务对外暴露接口
                /order-service/api/v1/order/save
真正部署是内外网隔离的方式

小D课堂 - 新版本微服务springcloud+Docker教程_6-02 springcloud网关组件zuul的更多相关文章

  1. 小D课堂 - 新版本微服务springcloud+Docker教程_汇总

    小D课堂 - 新版本微服务springcloud+Docker教程_1_01课程简介 小D课堂 - 新版本微服务springcloud+Docker教程_1_02技术选型 小D课堂 - 新版本微服务s ...

  2. 小D课堂 - 新版本微服务springcloud+Docker教程_1_01课程简介

    笔记 ============================================= SpringCloud课程笔记.txt 第一章 课程介绍和学习路线 1.微服务架构SpringClou ...

  3. 小D课堂 - 新版本微服务springcloud+Docker教程_3-04 SpringCloud微服务核心组件Eureka介绍和闭源后影响

    笔记 4.SpringCloud微服务核心组件Eureka介绍和闭源后影响     简介:         SpringCloud体系介绍             官方地址:http://projec ...

  4. 小D课堂 - 新版本微服务springcloud+Docker教程_3-01 什么是微服务的注册中心

    笔记 第三章 SpringCloud核心组件注册中心 1.什么是微服务的注册中心     简介:讲解什么是注册中心,常用的注册中心有哪些 (画图)                  理解注册中心:服务 ...

  5. 小D课堂 - 新版本微服务springcloud+Docker教程_2_04微服务下电商项目基础模块设计

    笔记 4.微服务下电商项目基础模块设计     简介:微服务下电商项目基础模块设计 分离几个模块,课程围绕这个基础项目进行学习             小而精的方式学习微服务 1.用户服务       ...

  6. 小D课堂 - 新版本微服务springcloud+Docker教程_2_03常见的微服务框架

    笔记 3.常见的微服务框架     简介:讲解常用的微服务框架 consumer: 调用方         provider: 被调用方         一个接口一般都会充当两个角色(不是同时充当) ...

  7. 小D课堂 - 新版本微服务springcloud+Docker教程_6-06 zuul微服务网关集群搭建

    笔记 6.Zuul微服务网关集群搭建     简介:微服务网关Zull集群搭建 1.nginx+lvs+keepalive      https://www.cnblogs.com/liuyisai/ ...

  8. 小D课堂 - 新版本微服务springcloud+Docker教程_6-01 微服务网关介绍和使用场景

    笔记 第六章 微服务网关zuul开发实战 1.微服务网关介绍和使用场景     简介:讲解网关的作用和使用场景 (画图)          1)什么是网关         API Gateway,是系 ...

  9. 小D课堂 - 新版本微服务springcloud+Docker教程_4-05 微服务调用方式之feign 实战 订单调用商品服务

    笔记 5.微服务调用方式之feign 实战 订单调用商品服务     简介:改造电商项目 订单服务 调用商品服务获取商品信息         Feign: 伪RPC客户端(本质还是用http)    ...

随机推荐

  1. HTML5学习:缩略图

    HTML代码 <div> <img src="img/pic.png" alt="This is a pic" /> </div& ...

  2. Linux环境下交叉编译器安装及运行

    描述: 由于 使用第三方编译器是提示No such file or directory 原因:编译器为32位版本,而系统是64位的 解决方法:安装32位版本编译支持库 sudo apt-get ins ...

  3. java——spring中bean的作用域

    文章:理解Spring框架中Bean的作用域 博客地址:https://baijiahao.baidu.com/s?id=1610298792072480906&wfr=spider& ...

  4. final 在 java 中有什么作用?(未完成)

    final 在 java 中有什么作用?(未完成)

  5. websocket链接报错 ERR_CONNECTION_TIME_OUT

    每次打开页面都会报这个错误,链接超时,之前一直是可以的,查看日志之后发现链接数据库失败,修改启动配置文件,修改数据库配置信息,我准备数据库配置信息写死了,然后启动.解决!!!!

  6. JavaScript实现数据的双向绑定

    接触到Angulr.js和Vue.js后,提到最多的就是双向绑定 下面将用JavaScript实现数据的双向绑定 <!DOCTYPE html> <html> <head ...

  7. mysql乐观锁总结和实践(转载)

    原文地址:http://chenzhou123520.iteye.com/blog/1863407 乐观锁介绍: 乐观锁( Optimistic Locking ) 相对悲观锁而言,乐观锁假设认为数据 ...

  8. python_tkinter组件

    1.按钮 # 按钮 # bg设置背景色 btn = tkinter.Button(root,text = '按钮',bg = 'red') btn.pack() # fg设置前景色(文字颜色) btn ...

  9. java中volatile关键字的含义(转载)

    在java线程并发处理中,有一个关键字volatile的使用目前存在很大的混淆,以为使用这个关键字,在进行多线程并发处理的时候就可以万事大吉. Java语言是支持多线程的,为了解决线程并发的问题,在语 ...

  10. PHP mysqli_fetch_field() 函数

    返回结果集中下一字段(列),然后输出每个字段名称.表格和最大长度: <?php // 假定数据库用户名:root,密码:123456,数据库:RUNOOB $con=mysqli_connect ...