专栏首页A周立SpringCloudSpring Cloud Edgware新特性之五:filters端点

Spring Cloud Edgware新特性之五:filters端点

Spring Cloud是当前炙手可热的微服务开发框架。它的功能强大,组件丰富,设计优雅。目前Spring Cloud还在不断发展之中。

Spring Cloud即将发布 SpringCloudEdgware 版本。该版本解决了不少Bug,新增了不少新特性,本系列博客将为大家详细阐述在Spring Cloud Edgware中新增的特性。

我们知道,过滤器是Zuul的核心。笔者曾经写过两篇文章介绍过滤器:

  • Spring Cloud内置的Zuul过滤器详解
  • Spring Cloud Zuul过滤器详解

在Spring Cloud Edgware版本中,新增了 /filters 端点。访问该端点即可返回Zuul中当前所有过滤器的详情,并按照类型分类。

如下是 /filters 端点的展示结果,从中,我们可以了解当前Zuul中, errorpostpreroute 四种类型的过滤器分别有哪些,每个过滤器的 order (执行顺序)是多少,以及是否启用等信息。这对于Zuul问题的定位很有用。

{
    "error": [
        {
            "class": "org.springframework.cloud.netflix.zuul.filters.post.SendErrorFilter",
            "order": 0,
            "disabled": false,
            "static": true
        }
    ],
    "post": [
        {
            "class": "org.springframework.cloud.netflix.zuul.filters.post.SendResponseFilter",
            "order": 1000,
            "disabled": false,
            "static": true
        }
    ],
    "pre": [
        {
            "class": "org.springframework.cloud.netflix.zuul.filters.pre.DebugFilter",
            "order": 1,
            "disabled": false,
            "static": true
        },
        {
            "class": "org.springframework.cloud.netflix.zuul.filters.pre.FormBodyWrapperFilter",
            "order": -1,
            "disabled": false,
            "static": true
        },
        {
            "class": "org.springframework.cloud.netflix.zuul.filters.pre.Servlet30WrapperFilter",
            "order": -2,
            "disabled": false,
            "static": true
        },
        {
            "class": "org.springframework.cloud.netflix.zuul.filters.pre.ServletDetectionFilter",
            "order": -3,
            "disabled": false,
            "static": true
        },
        {
            "class": "org.springframework.cloud.netflix.zuul.filters.pre.PreDecorationFilter",
            "order": 5,
            "disabled": false,
            "static": true
        }
    ],
    "route": [
        {
            "class": "org.springframework.cloud.netflix.zuul.filters.route.SimpleHostRoutingFilter",
            "order": 100,
            "disabled": false,
            "static": true
        },
        {
            "class": "org.springframework.cloud.netflix.zuul.filters.route.RibbonRoutingFilter",
            "order": 10,
            "disabled": false,
            "static": true
        },
        {
            "class": "org.springframework.cloud.netflix.zuul.filters.route.SendForwardFilter",
            "order": 500,
            "disabled": false,
            "static": true
        }
    ]
}

本文分享自微信公众号 - A周立SpringCloud(gh_e6849e368b5f),作者:周立

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2017-10-30

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 一个线程罢工的诡异事件

    事情(事故)是这样的,突然收到报警,线上某个应用里业务逻辑没有执行,导致的结果是数据库里的某些数据没有更新。

    用户1516716
  • 我会手动创建线程,为什么让我使用线程池?

    现陆续将Demo代码和技术文章整理在一起 Github实践精选 ,方便大家阅读查看,本文同样收录在此,觉得不错,还请Star

    用户1516716
  • Java 线程池中的线程复用是如何实现的?

    那么就来和大家探讨下这个问题,在线程池中,线程会从 workQueue 中读取任务来执行,最小的执行单位就是 Worker,Worker 实现了 Runnabl...

    用户1516716
  • 高并发编程系列(二)

    比如,在一个web app处理过程中,多个servlet线程共同访问同一个资源,这时如果异常处理不适合,

    全栈自学社区
  • IBM首个人造神经元幕后,神经形态计算系统向人造大脑突破

    【新智元导读】日前,IBM苏黎世研究院研究人员利用相变存储材料,制造出首例随机兴奋人工神经元。《经济学人》评论,这是在人造大脑方面的又一突破。模仿大脑的概念简单...

    新智元
  • Java多线程编程笔记之Condition

    本篇内容基于JDK7,涉及Condition常用方法。 1.概述 Condition接口位于java.util.concurrent.locks包下,实现类有 ...

    JavaQ
  • 高并发编程-Condition深入解析

    Condition接口位于java.util.concurrent.locks包下,实现类有 AbstractQueuedLongSynchronizer.Co...

    JavaQ
  • 为什么我们的神经网络需要激活函数

    如果你正在读这篇文章,那么很可能你已经知道什么是神经网络,什么是激活函数,但是,一些关于机器学习的入门课程并不能很清楚地说明,为什么我们需要这些激活函数。我们需...

    deephub
  • RecycleView终极封装(添加头、尾)

    头布局没什么可说的,在ListView当中可以直接通过addHeaderView()进行添加头布局,但是对于Recyclerview当中,并没有这种直接添加头布...

    Demo_Yang
  • 【DB笔试面试429】MySQL的复制原理(Replication)以及流程是什么样的?

    MySQL的复制原理:Master上面事务提交时会将该事务的Binlog Events写入Binlog文件,然后Master将Binlog Events传到Sl...

    小麦苗DBA宝典

扫码关注云+社区

领取腾讯云代金券