我正在尝试微调hystrix线程池核心大小和最大大小。为此,我需要随时知道并绘制池中活动线程的数量。有办法吗?
这是正确的方法吗?
HystrixThreadPoolKey hystrixThreadPoolKey = new HystrixThreadPoolKey() {
@Override
public String name() {
return threadPoolKey;
}
};
HystrixThreadPoolMetrics hystrixThreadPoolMetrics = HystrixThreadPoolMetrics.getInstance(hystrixThreadPoolKey);
log.info("Hystrix active threads: {}", hystrixThreadPoolMetrics.getCurrentActiveCount().toString());
我不确定,因为当我使用它时,当corePoolSize设置为10时,活动线程计数为0。
答案 0 :(得分:0)
此代码可以正常工作(在对null进行检查直到没有请求之前)。但是正确的方法应该是使用Netflix的伺服器。
引用公告的一部分:
Servo旨在使开发人员能够轻松地从其应用程序代码中导出指标,将其注册到JMX,并将其发布到外部监视系统中。
(活动线程池的大小也可以小于核心大小)