Performance Hystrix性能开销

Performance Hystrix性能开销,performance,hystrix,Performance,Hystrix,我使用Hystrix来结束我的两个服务呼叫(99%的呼叫为~200毫秒)。我的hystrix配置看起来像 -核心尺寸:80 -ExecutionTimeoutIn毫秒数:600 -MetricsRollingStatisticalWindows毫秒:10000 -MetricsRollingsStatisticalIndowBuckts:10 (其余均为默认值。) 在我的应用程序中观察到了一种奇怪的行为(虽然是间歇性的)。大多数情况下,服务调用似乎工作正常,没有任何hystrix超时(只有少数调

我使用Hystrix来结束我的两个服务呼叫(99%的呼叫为~200毫秒)。我的hystrix配置看起来像

-核心尺寸:80
-ExecutionTimeoutIn毫秒数:600
-MetricsRollingStatisticalWindows毫秒:10000
-MetricsRollingsStatisticalIndowBuckts:10
(其余均为默认值。)

在我的应用程序中观察到了一种奇怪的行为(虽然是间歇性的)。大多数情况下,服务调用似乎工作正常,没有任何hystrix超时(只有少数调用在一个小时左右超时)。
但是偶尔hystrix超时确实会增加很多倍
在分析原因时,我唯一能掌握的是hystrix中的执行延迟(我的实际业务逻辑的延迟,在HystrixCommand中的run方法中)比总延迟要少得多(hystrix调用execute()所花费的总时间)在命令上单击以获取实际响应)

问题:
1.为什么我的执行和总延迟之间有这么大的差异(执行比总延迟小得多)。产生这种开销的可能原因是什么。(注:我的服务器上的qps几乎不到10)
2.是否有与此开销相关的文档?我怎样才能找出真正的瓶颈呢


任何线索将不胜感激

我们面临着完全相同的问题,通过迁移到1.5.x解决了这个问题

引述—

桶滚动现在通过Rx后台线程而不是不幸的Hystrix命令线程进行。这使得命令性能更加可预测。现在,用户线程延迟实际上与命令延迟无法区分