2017-11-25 89 views
-3

在使用非阻塞http客户端和在单独线程池上执行的阻塞http客户端之间的性能,资源等方面有何区别。在后一种情况下,线程将被阻塞,但使用分离的线程池可减少对应用程序其余部分的影响。有没有实际的区别?如果有人能够澄清这一点,这将非常有帮助。非阻塞http客户端vs阻止使用分离线程池的http客户端

+0

通常,使用选择器的设计良好的应用程序将具有更高的性能,但“精心设计”取决于您未提供的许多细节。 – markspace

+1

这是一个对于计算器而言过于宽泛的问题。也许这有助于:https://softwareengineering.stackexchange.com/questions/321529/what-are-the-benefits-of-asynchronous-http – pedrorijo91

回答

0

阻塞客户端将使用更多的资源(主要是因为额外的线程 - 这意味着更多的上下文切换和增加内存使用,因为额外的堆栈)。这就是说我认为线程池中线程数量有限会带来最大的负面影响 - 如果所有线程都被长时间运行的请求阻塞,那么“快速”请求必须等待(即使它们已完成)。