首页 > 解决方案 > 应该使用哪个线程池在 Spring Cloud Gateway 过滤器中执行昂贵的 cpu 操作?

问题描述

一般来说,最好避免 Spring Cloud Gateway 中的任何阻塞计算。

但是,可能会有一些 [阻塞非 IO] 昂贵的操作,例如某些有效负载的加密/解密等。

根据我目前的调查,我从一个活动的 Spring Cloud Gateway 应用程序中发现了 2 个线程池。

Q) 在有界弹性线程池与事件循环线程池中执行昂贵的 cpu 计算的成本是多少。根据我的理解,我们绝对应该避免事件循环线程池上的任何阻塞代码。

看起来默认情况下所有过滤器都在事件循环线程池上运行。所以卸载到 boundedElastic 实际上会产生线程切换的成本。

标签: spring-cloud-gateway

解决方案


推荐阅读