Hyxtrix 线程池隔离模式下。线程上下文丢失问题解决:
https://zhuanlan.zhihu.com/p/32046755
https://blog.csdn.net/songhaifengshuaige/article/details/80345012
信号量 | 线程池 | ||||
优点 | 缺点 | 适用场景 | 优点 | 缺点 | 适用场景 |
轻量无额外开销 | 不支持任务排队和主动超时 | 受信用户(超时可控) | 支持排队和超时 | 线程调用会产生额外的开销 | 有限扇出 |
不支持异步调用 | 高扇出(依赖下游接口比较多,如果使用线程池方式会导致创建大量线程) | 支持异步调用 | 不受信用户 | ||
高频高速接口(缓存等) |
主动超时概念:线程隔离模式下,业务线程将请求加入线程池,如果超过限定的超时时间,业务线程将不会等待线程池的结果直接返回。而信号量不是异步的,因此业务线程只能等待下游返回或是协议超时才能结束。