在Hystrix中的Bulkahead模式与Semaphore

时间:2017-10-19 15:04:30

标签: spring-boot microservices hystrix

你能解释一下我的意思吗: "基本上,Hystrix支持两种基本策略:在其他地方卸载工作(使用专用线程池)或在当前线程中工作(依赖于信号量)。使用专用线程池(也称为隔板模式)是在大多数用例中使用的正确策略:调用线程未被阻塞,并且还可以设置超时期望。使用信号量,当前线程将忙于工作完成,成功与否(自1.4.x发布分支以来声称也支持超时但有一些副作用)。"

我的问题:

1)为什么在信号量中也不能设置超时预期?我认为信号量有方法" tryacquire"等待超时:https://docs.oracle.com/javase/7/docs/api/java/util/concurrent/Semaphore.html#tryAcquire(long,%20java.util.concurrent.TimeUnit)

声称自1.4.x发布分支以来也支持超时,但有一些副作用" ,影响是什么?

2)使用专用池意味着每个服务都有一个线程池?

谢谢

0 个答案:

没有答案