SpringMVC拦截器和网关

1、spring web 中的拦截器基于回调机制,可以在目标方法执行前,先进行业务检测,满足条件则放行,不满足条件则进行拦截,拦截器原理分析:

1、由handlerinterceptor接口规范定义的拦截器, 首先我们要进行实现,并重写其中的prehandle方法。

2、定义一个配置类,实对拦截器的注册。---这里要实现webMvcConfigurer接口,并重写里面的

addInterceptors方法,在里面添加拦截的路径,也就时指定拦截规则。

1、网关概述:

        本质上要提供一个各种服务访问的入口,并提供服务接收并转发所以内外部的客户端调用,还有就是权限认证,限流控制等等。用的是spring  cloud  gateway 网关组件,旨在为微服务架构提供一种简单有效的统一的API入口,负责服务请求路由,组合及协议转换,并基于filter链的方式提供了权限认证,监控,限流等功能。

优点:1、性能强劲:是第一代网关Zuul的1.6倍。

           2、功能强大:内置了很多实用的功能,例如转发,监控,限流等。

           3、设计优雅,容易扩展。

网关中配置路由地址:

uri来指定地址,uri是统一资源标志符,表示的是web上每一种可用的资源,如HTML文档,图像等都由一个URI进行标识。确切的说就是一个大的地址群,而不是一个确切的地址。

URL和URI区别:

只要能唯一标识资源的就是URI,在URI的基础上给出其资源的访问方式的就是URL

网关的负载均衡流程:

客户端向spring cloud gateway(网关) 发出请求,会先经过XxxHandlerMapping对象,通过这个对象去调用XxxPredicatesFactory谓词工程中生成的谓词对象(GatewayPredicate),谓词对象再调用WebHandler(web请求处理器对象),这个对象会调用过滤器(局部过滤器或全局过滤器),再将请求转发到具体的服务。

如果gateway handlerMapping 通过断言predicates的集合确定请求与路由routers 匹配,则将其发送到gateway webHandler。gateway web handler 通过确定的路由中所配置的过滤器集合链式调用过滤器。filter由虚线分隔的原因是,filter可以在发送代理请求之前和之后运行逻辑,处理的逻辑是在处理请求时排在前面的过滤器先执行,而处理返回相应的时候,排在后面的过滤器先执行。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值