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


声明:本文转载自https://my.oschina.net/eacdy/blog/1555925,转载目的在于传递更多信息,仅供学习交流之用。如有侵权行为,请联系我,我会及时删除。

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

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

本文为大家讲解如何配置Zuul的Hystrix线程池。

TIPS

本文中的HystrixThreadPoolKey 跟《Hystrix配置说明( https://github.com/Netflix/Hystrix/wiki/Configuration ) 》中的HystrixThreadPoolKey 是一个东西,如果你不了解HystrixThreadPoolKey ,不了解线程隔离策略,请《详细阅读Hystrix配置说明》。了解这俩术语概念后,再阅读本文,会事半功倍。

默认情况下,Zuul的隔离策略是SEMAPHORE 。但一些场景下,我们可能需要将隔离策略改为THREAD 设置zuul.ribbonIsolationStrategy=THREAD 即可。当 zuul.ribbonIsolationStrategy=THREAD 时,Hystrix的线程隔离策略将会作用于所有路由。

此时,HystrixThreadPoolKey 默认为“RibbonCommand”。这意味着,所有路由的HystrixCommand都会在相同的Hystrix线程池中执行。

可使用以下配置,让每个路由使用独立的线程池:

zuul:   threadPool:     useSeparateThreadPools: true 

使用如上配置后,默认的HystrixThreadPoolkey 将与每个路由的服务标识相同。如果你想HystrixThreadPoolKey 添加前缀,可使用类似如下的配置:

zuul:   threadPool:     useSeparateThreadPools: true     threadPoolKeyPrefix: zuulgw 

相关Issue

https://github.com/spring-cloud/spring-cloud-netflix/pull/2074

本文发表于2017年10月25日 14:34
(c)注:本文转载自https://my.oschina.net/eacdy/blog/1555925,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如有侵权行为,请联系我们,我们会及时删除.

阅读 1859 讨论 0 喜欢 0

抢先体验

扫码体验
趣味小程序
文字表情生成器

闪念胶囊

你要过得好哇,这样我才能恨你啊,你要是过得不好,我都不知道该恨你还是拥抱你啊。

直抵黄龙府,与诸君痛饮尔。

那时陪伴我的人啊,你们如今在何方。

不出意外的话,我们再也不会见了,祝你前程似锦。

这世界真好,吃野东西也要留出这条命来看看

快捷链接
网站地图
提交友链
Copyright © 2016 - 2021 Cion.
All Rights Reserved.
京ICP备2021004668号-1