Spring Cloud Edgware新特性之四:Zuul routes端点功能增强

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

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

我们知道,Zuul有一个非常实用的 /routes 端点。访问 $ZUUL_URL/routes 即可查看当前Zuul的路由规则,从而在很多情况下能够帮助我们定位Zuul的问题——当Zuul没有按照我们的计划去转发请求时, /routes 就会很有用,可通过该端点查看Zuul转发的规则。访问结果类似如下:

{
    /sample-service/**: "sample-service"
}
// 这段JSON表示:如果请求$ZUUL_URL/sample-service/**,Zuul会将请求转发到注册在Eureka Server上的sample-service服务的/**。

TIPS:使用 routes 端点的前提:

  1. Zuul Server需要有Spring Boot Actuator的依赖,否则访问 /routes 端点将会返回404;。
  2. 设置 management.security.enabled=false ,否则将会返回401;也可添加Spring Security的依赖,这样可通过账号、密码访问 routes 端点。

/routes 端点相关文档,可详见http://cloud.spring.io/spring-cloud-static/Dalston.SR4/single/spring-cloud.html#_the_routes_endpoint 。

SpringCloudEdgware 中,Spring Cloud对该端点进行了增强。我们可通过 /routes?format=detail 来查看更多详情。访问后,将会展示类似如下的结果:

{
  "/sample-service/**": {
    "id": "sample-service",
    "fullPath": "/sample-service/**",
    "location": "sample-service",
    "path": "/**",
    "prefix": "/sample-service",
    "retryable": false,
    "customSensitiveHeaders": false,
    "prefixStripped": true
  }
}

有结果可知,此时Zuul为我们展示了很多有用的信息,例如:转发到了那个地址、是否重试等。使用 /routes?format=detail 可进一步简化我们的调试与排错。

原文发布于微信公众号 - A周立SpringCloud(gh_e6849e368b5f)

原文发表时间:2017-10-27

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

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏JAVA技术zhai

以Spring Cloud为基础的微服务架构提出与落地

微服务架构模式的核心在于如何识别服务的边界,设计出合理的微服务。但如果要将微服务架构运用到生产项目上,并且能够发挥该架构模式的重要作用,则需要微服务框架的支持。...

42370
来自专栏猿天地

Spring Boot Actuator监控页面报错解决

今天在访问Spring Boot Actuator监控页面的时候报错了,之前都没遇到这种情况,大概的意思就是无权限访问 <html> <body> <...

35740
来自专栏java达人

Springboot 注解如何工作

作者:Parmod 译者:java达人 来源:http://parmodarora.com/2016/01/06/springbootapplication-a...

286100
来自专栏杨建荣的学习笔记

tomcat源码编译和环境搭建(r5笔记第83天)

关于tomcat源码的编译和环境搭建自己也是拖了一段时间,今天还是硬着头皮来做一做,还是有所收获。 tomcat源码的编译还是首选ant,作为apache的顶级...

34050
来自专栏IT笔记

SpringBoot开发案例之奇技淫巧

程序员都有着一种天生的好奇心,这种好奇心引导着我们的编程生涯。写几行代码,装载到计算机里,让它按照你的思路工作,这是非常有趣的事情。但随着开发的东西越来越多,我...

1.4K100
来自专栏IT笔记

SpringBoot开发案例之奇技淫巧

spring-boot-starter-parent包含了大量配置好的依赖管理,在自己项目添加这些依赖的时候不需要写<version>版本号

40260
来自专栏james大数据架构

如何将mysql数据导入Hadoop之Sqoop安装

  Sqoop是一款开源的工具,主要用于在Hadoop(Hive)与传统的数据库(mysql、postgresql...)间进行数据的传递,可以将一个关系型数据...

313100
来自专栏A周立SpringCloud

Spring Cloud Edgware新特性之二:如何配置Zuul的Hystrix线程池

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

37860
来自专栏雪地二货笔记库

简单易懂的Springboot介绍

Springboot使您可以轻松地创建独立的、生产级的基于Spring的应用程序,您可以“直接运行”,启动应用程序都需要非常少的 Spring配置。 这是...

31320
来自专栏斑斓

基于Spring Cloud的微服务落地

微服务架构模式的核心在于如何识别服务的边界,设计出合理的微服务。但如果要将微服务架构运用到生产项目上,并且能够发挥该架构模式的重要作用,则需要微服务框架的支持。...

15350

扫码关注云+社区

领取腾讯云代金券