
在一次调用FeignClient时,开启了40多个线程调用,然而每次只能调通10个。查看日志发现:
Task javautilconcurrentFutureTask@2019af96 rejected from javautilconcurrentThreadPoolExecutor@78cc480d[Running, pool size = 10, active threads = 10, queued tasks = 0, completed tasks = 0]
根据其提示我们可以看出线程池大小只有10,从而拒绝执行新的线程,触发了Hystrix熔断机制。查阅 Hystrix文档 发现Hystrix为每个依赖提供一个小的线程池(或信号)( 默认10个线程 ),如果线程池已满调用将被立即拒绝。可以通过修改配置提高Hystrix的并发能力,在配置文件中加入:
hystrix:
threadpool:
default:
coreSize: 50 # 设置线程池大小为50
上传CPU-Z来看一下。如果显示是3770的是主板关闭了一半,找装机开通所有CPU核心。如果是H61的老主板支持不好的主板是原来的就升级BIOS,上传鲁大师载图,不用在这里猜测这么多,直接说出解决办法。
以上就是关于记一次多线程调用Feign接口失败问题全部的内容,包括:记一次多线程调用Feign接口失败问题、win7获取cpu信息失败是怎么回事,我电脑是i7 4核八线程、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)