您现在的位置是:主页 > 数据库技术 > 数据库技术
Spring Cloud中Zuul路由配置的示例分析
IDCBT2021-12-24【服务器技术】人已围观
简介这篇文章主要为大家展示了“Spring Cloud中Zuul路由配置的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Spring Cloud中Zuu
这篇文章主要为大家展示了“Spring Cloud中Zuul路由配置的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Spring Cloud中Zuul路由配置的示例分析”这篇文章吧。
Zuul路由配置路由配置看似简单,但也有部分的规则需要说明,小节以前面搭建的集群项目为基础,讲解Zuul的路由配置。
简单路由Spring Cloud在Zuul的“routing”阶段实现了几个过滤器,这些过滤器决定如何进行路由工作。其中,最基本的就是SimpleHostRoutingFilter,该过滤器运行后,会将HTTP请求全部转发到“源服务”(HTTP服务),本书将其称为简单路由,本章7.2小节的例子,实际上就是使用了简单路由进行请求转发。以下为简单路由的配置,同时使用了path与url:
zuul: routes: routeTest: path: /routeTest/163 url: http://www.163.com
以上的配置,访问“http://localhost:8080/reuteTest/163”,将会跳转到163网站。为了配置简便,可以省略path,默认情况下使用routeId作为path,以下的配置省略了path配置:
zuul: routes: route163: url: http://www.163.com
访问“http://localhost:8080/route163”,同样会路由到163网站。实际上,要触发简单路由,配置的url的值,需要以“http:”或者“https:”字符串打头。以下的配置,不能触发简单路由。
zuul: routes: noRoute163: url: www.163.com
简单路由的过滤器SimpleHostRoutingFilter,使用的是HttpClient进行转发,该过滤器会将HttpServletRequest的相关数据(HTTP方法、参数、请求头等),转换为HttpClient的请求实例(HttpRequest),再使用CloseableHttpClient进行转发。
在此过程中,为了保证转发的性能,使用了HttpClient的连接池功能。涉及连接池,就需要对其进行配置。在使用简单路由时,可以配置以下两项,修改HttpClient连接池的属性:
zuul.host.maxTotalConnections:目标主机的最大连接数,默认值为200。配置该项,相当于调用了PoolingHttpClientConnectionManager的setMaxTotal方法。
zuul.host.maxPerRouteConnections:每个主机的初始连接数,默认值为20。配置该项,相当于调用了PoolingHttpClientConnectionManager的setDefaultMaxPerRoute方法。
跳转路由 标签:很赞哦! ()