解决Spring Cloud Dashboard Thread pools 一直处于Loading状态

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u010826617/article/details/82260873

Hystrix 隔离策略配置

当使用hystrix-dashboard来监控Spring Cloud Zuul构建的API网关时,Thread Pool信息会一直处于Loading状态。这是Hystrix 隔离策略的原因,只有通过Hystrix配置把隔离策略改成为线程池的方式才能够得以展示。

Hystrix 隔离策略
SEMAPHORE - 它在调用线程上执行,并发请求受信号量计数的限制(Zuul默认此策略)
THREAD - 它在一个单独的线程上执行,并发请求受到线程池中线程数的限制

当 zuul.ribbonIsolationStrategy=THREAD时,Hystrix的线程隔离策略将会作用于所有路由。这意味着所有路由的HystrixCommand都会在相同的Hystrix线程池中执行,可以使用useSeparateThreadPools = true 设置每个路由使用独立的线程池。

zuul: 
  ribbonIsolationStrategy: THREAD #设置Hystrix隔离策略为线程池
  threadPool:
    useSeparateThreadPools: true #每个路由使用独立的线程池

参考资料
https://www.jianshu.com/p/1ced7daea58a
http://www.voidcc.com/content/spring-boot-hystrix-stream-404

猜你喜欢

转载自blog.csdn.net/u010826617/article/details/82260873