-
Notifications
You must be signed in to change notification settings - Fork 26.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Triple协议 consumer端线程池线程数依赖于provider端配置 #13291
Comments
Would you like to take a PR to fix it? |
@EarthChen @XingyuFu Fixed in pr #13294 #13178 |
Fixed in #13304 |
Triple协议,能否彻底地解决dubbo协议中的"Thread pool is EXHAUSTED!"问题? |
HTTP/2 层面的反压对于上层业务的效果本身是不好的,对于实时业务的请求我们更期望的是“尽力”处理,所以最佳的方案是走协程,在 3.3 的 beta 中我们已经支持配置 loom 协程作为线程池 |
dubbo-3.3引入Java Loom协程,非常棒的特性。请问什么时候发布正式版本? Dubbo 3 之 Triple 流控反压原理解析 2018年,《Reactive 架构升级实践——淘宝全站业务的全异步流式架构升级》,实际真实效果咋样? |
Environment
Steps to reproduce this issue
构造一个Consumer,一个Provider端
具体的接口级注册中心的信息如下:side=provider,threads=1200
追踪代码的话,可以从org.apache.dubbo.common.threadpool.manager.DefaultExecutorRepository#createExecutorIfAbsent中看,线程池是根据url创建出来的。
更内部的线程池参数,org.apache.dubbo.common.threadpool.support.fixed.FixedThreadPool,是从url的threads参数获取的。
这就引申出一个问题:Consumer端的这个线程池,核心线程数是依赖于Provider端url配置的。
Provider端面临的场景和Consumer端可能不同,机器配置、数量上都可能不相同。Provider对自己这边配置的合理线程数,对Consumer这一端可能就不合理了。
我们这边使用的时候,可能会存在OOM风险。
The text was updated successfully, but these errors were encountered: