线程隔离和信号量隔离调用之间的区别
Posted
技术标签:
【中文标题】线程隔离和信号量隔离调用之间的区别【英文标题】:Difference between thread-isolated and semaphore-isolated calls 【发布时间】:2016-05-06 17:29:57 【问题描述】:我正在浏览 Netflix 开源功能 Hystrix... 我看到一个声明 “如今,Netflix 每天通过 Hystrix 执行数百亿次线程隔离和数千亿次信号量隔离调用”
想知道这些不同类型的调用之间的区别..
【问题讨论】:
【参考方案1】:首先我们需要看看线程和信号量之间的区别。通常,由于开销,调用线程比信号量更昂贵。所以对于每秒大量的请求,信号量是你可以考虑的。
其次,使用信号量,命令将在调用者的线程内执行。这意味着并发调用与其他调用没有完全隔离(不像您使用线程时那样)。
最后,使用信号量,当有超时时,它不能被终止(除非你专门设置它)。如果您不知道客户的行为会是什么,那么这将不是一件好事。
【讨论】:
以上是关于线程隔离和信号量隔离调用之间的区别的主要内容,如果未能解决你的问题,请参考以下文章