在 Hystrix 中使用 ThreadPool 的优势
Advantage of using ThreadPool in Hystrix
在Hystrix中使用线程池有什么好处?
假设我们正在调用第三方服务,当我们调用服务或数据库时线程进入等待状态而不是为每次调用继续创建线程有什么用?
所以,我的意思是短路(Threadpooled)方法比普通(非短路)方法好多少?
假设远程服务(任何服务)开始响应缓慢,但典型的应用程序(正在调用远程服务的服务)仍将继续调用该远程服务。所以短路(Threadpooled)方法可以帮助您在这种特殊情况下构建防御系统。
因为调用服务不知道远程服务是否健康,每次请求进入时都会产生新线程。这将导致使用已经苦苦挣扎的服务器上的线程。
我们不希望发生这种情况,因为我们需要这些线程用于服务器上的其他远程调用或进程 运行,并且我们还希望避免 CPU 利用率激增。因此,如果发生延迟,这可以防止资源被阻塞。另外Bounded线程池也给下游服务恢复一些喘息的空间。
在Hystrix中使用线程池有什么好处? 假设我们正在调用第三方服务,当我们调用服务或数据库时线程进入等待状态而不是为每次调用继续创建线程有什么用?
所以,我的意思是短路(Threadpooled)方法比普通(非短路)方法好多少?
假设远程服务(任何服务)开始响应缓慢,但典型的应用程序(正在调用远程服务的服务)仍将继续调用该远程服务。所以短路(Threadpooled)方法可以帮助您在这种特殊情况下构建防御系统。
因为调用服务不知道远程服务是否健康,每次请求进入时都会产生新线程。这将导致使用已经苦苦挣扎的服务器上的线程。
我们不希望发生这种情况,因为我们需要这些线程用于服务器上的其他远程调用或进程 运行,并且我们还希望避免 CPU 利用率激增。因此,如果发生延迟,这可以防止资源被阻塞。另外Bounded线程池也给下游服务恢复一些喘息的空间。