当前位置: 首页 > news >正文

浙江省建设门户网站济南seo整站优化招商电话

浙江省建设门户网站,济南seo整站优化招商电话,查询网站建设时间,自己怎么做电商作用 统一管理,易于监控安全,限流:在网关层就过滤掉非法信息nginx外部网关,gateway内网nginx可以使用Lua或Kong来增强 概念 id:名称随意uri: 被代理的服务地址。id和uri必填,谓词和过滤器非必填谓词:可以…

作用

  • 统一管理,易于监控
  • 安全,限流:在网关层就过滤掉非法信息
  • nginx外部网关,gateway内网
  • nginx可以使用Lua或Kong来增强

概念

  • id:名称随意
  • uri: 被代理的服务地址。id和uri必填,谓词和过滤器非必填
  • 谓词:可以用于匹配访问gateway的uri,匹配则当前路由生效,
  • 过滤器:GatewayFilter的实例,在代理之前或之后添加逻辑,灵活度最高

处理流程

  • 首先Handler Mapping对URL进行处理,再交给Web Handler,它调用被过滤器前半部分进行处理,处理完成后调用真实被代理的服务,被代理的服务响应后,执行过滤器后半部分的逻辑,把结果返回给WebHandler,再返回给HandlerMapping,最终返回给客户端

使用

gateway:discovery:locator:enabled: true # 启用自动根据服务ID生成路由lower-case-service-id: true # 设置路由的路径为小写的服务ID

yml配置

  • list中的元素如果有多个字段,需要"-"和冒号分别指定每个字段和值;如果只有一个字段,可以使用逗号分割
  • 对象类型的配置,可以通过"-"和冒号配置每个字段
  • Map类型:key,value通过冒号分割
predicates:- Path=/sendOrder- Query=name,ma.- name: Queryargs:param: idregexp: \d+#predicates是List, 它的元素是public class PredicateDefinition {@NotNullprivate String name;private Map<String, String> args = new LinkedHashMap<>();}等号分割转成对象的写法不是yml内置支持的

谓词

  • 谓词配置是一个List,其中的元素可以是特定格式的字符串,或者对象。字符串写法:等号分割,第1部分是谓词名称name,第二部分args逗号分割,值保存进Map value,Map key自动生成。对象写法:PredicateDefinition
  • 如果args中本身有逗号和冒号,就不能使用字符串格式
  • shortcutType方法定义了args参数到ConfigClass的解析方式,DEFAULT:shortcutFieldOrder去掉shortcutFieldPrefix前缀对应ConfigClass字段名称,args参数的val对应ConfigClass的字段值;GATHER_LIST:逗号分割的List;GATHER_LIST_TAIL_FLAG:逗号分割的List,但最后一个值是布尔值,最终转成2个key的Map,第一个key的值是布尔值前面的List,第二个是布尔值
  • 用于匹配访问gateway的请求(比如uri,查询参数、请求头),匹配则当前路由生效
  • 对应GatewayPredicate的实现,实现类由工厂创建,工厂是RoutePredicateFactory的实现类,实现类命名规范:谓词name+RoutePredicateFactory,比如Path对应PathRoutePredicateFactory
  • 谓词名称对应工厂实现类的类名前缀,谓词参数args对应工厂ConfigClass
  • 多个谓词是的关系
  • 谓词不通过时,gateway返回404

Path

  • 匹配路径,支持ant匹配和通过{}提取uriVariables

Query

  • 是否有对应http请求参数名称,值可以正则。
  • name固定Query,args有2个值,param和regexp,对应查询参数名称和值
  • 只配名称时,表示只要有该请求参数则通过

Header

  • HeaderRoutePredicateFactory
  • 匹配请求头的名称和值,可以只配名称,实际请求头的值可能有多个,只要有一个匹配即可,配置值支持正则

Method

  • 匹配HTTP请求方法,配置必须大写,逗号分割

RemoteAddr

  • 匹配请求的客户端ip,准确的说是最后一个网络代理的ip,可以多个,逗号分割

Host

  • 匹配Host请求头中主机部分的值(不包括端口),可以多个,逗号分割,可以ant匹配
  • 采用AntPathMatcher匹配,且路径分割符是"."

Cookie

  • 匹配Cookie的名称和值,值可以正则匹配

Weight

  • 用于不同路由的负载均衡,同一分组的路由根据权重进行负载
  • 可以配置2个值,逗号分割,分别是分组和权重
  • WeightCalculatorWebFilter:启动时,根据Weight配置生成一个双层的Map,第一层是分组名称,第二层是路由id;请求到来时,生成一个0~1随机数,每个分组的选择一个路由ID
  • WeightRoutePredicateFactory:谓词过滤时,根据分组和路由ID进行过滤

过滤器

  • 配置写法和谓词相同,字符串写法:等号分割,第一部分对应过滤器工厂GatewayFilterFactory类名前缀,第二部分是参数
  • 过滤器用于修改请求和响应

AddRequestHeader

  • 添加请求头,后端可以获取到
  • 请求头的值支持从uriVariables中动态获取

StripPrefix

  • 只有一个整数值n,将请求的路径按"/"分割后,去除前缀n个

限流

跨域

spring.cloud.gateway.globalcors:cors-configurations:'[/**]': #跨域的uriPatternallowedHeaders: "*"allowedOrigins: "*"allowedMethods:- POST- OPTIONS- GET
  • 服务端通过请求头Origin和请求url的scheme、host、port是否相同来判断是否为跨域请求,只要有一个不同则为跨域请求
  • 必须有跨域配置,并且请求的uri和跨域配置的uriPattern匹配,网关才会判断是否跨域,如果跨域,通过跨域配置中允许跨域的请求头、来源、请求方法和实际请求的请求头、来源、请求方法是否匹配,如果都匹配,则运行跨域访问,否则返回403Forbiden
  • org.springframework.web.reactive.handler.AbstractHandlerMapping#getHandler
  • org.springframework.web.cors.reactive.DefaultCorsProcessor#process

自动生成路由

  • 支持通过服务发现获取服务ID,自动根据服务ID生成路由配置。默认的路由配置的uri是lb://serviceId,谓词是/serviceId/**,过滤器是Rewritepath将serviceId去掉

全局过滤器

ReactiveLoadBalancerClientFilter

  • 处理带lb scheme的路由URI,先通过ServiceInstanceListSupplier根据服务名称获取服务实例,再通过ReactorLoadBalancer实例负载均衡

RouteToRequestUrlFilter

  • 做2件事情:1、支持2层scheme,将外层scheme保存到GATEWAY_SCHEME_PREFIX_ATTR,然后去除。2、使用内层sheme、host、port替换实际请求的uri,从而实现转发
http://www.hkea.cn/news/646813/

相关文章:

  • 商丘网站网络推广员的工作内容和步骤
  • 取消wordpress邮箱认证北京搜索优化排名公司
  • 千库网素材南宁seo优势
  • 西安机场商务宾馆百度做网站怎么在百度上做网站
  • ps网站建设seo网络公司
  • 网站建设步骤 教 程网站怎么做谷歌推广
  • 网站制作需要注意什么潍坊做网站哪家好
  • 专门做团购的网站有哪些色盲图
  • 百度做网站续费费用百度营业执照怎么办理
  • 深圳网站建设方维网络企业网站制作要求
  • 制作好网站黑帽seo教程
  • 云南 网站建设网站seo优化对网店的推广的作用为
  • 网站建设免费国外舆情服务公司
  • 怎么做网站banner查排名网站
  • 做网站好看的背景图片相关搜索优化软件
  • 怎么查网站是哪家制作公司做的百度收录查询
  • 企业年金交了有好处吗网络优化工程师吃香吗
  • python做网站开发百度6大核心部门
  • 自己做网站平台企业网站优化价格
  • 淘宝网网站建设的需求分析百度会员登录入口
  • 建网站的专业公司推广网站多少钱
  • 网站不去公安局备案自己怎么搭建网站
  • 外贸网站建设入门深圳网络推广哪家
  • 网站模板资源公司网站推广
  • 广东省建设教育协会官方网站首页html简单网页代码
  • 个人网站意义阿里指数官网最新版本
  • 网站开发方式有哪四种搜索引擎优化课程总结
  • 申请做网站、论坛版主app推广接单
  • 青海网站建设广州seo优化推广
  • 物流公司网站制作模板上海网站关键词排名