0-1 - Thread Pool Resource Exhaustion

0-1 - Thread Pool Resource Exhaustion

The server’s thread resources have been exhausted.
By default, there are 200 business threads on the Dubbo server. If the number of concurrent requests exceeds 200, new requests will be rejected, and this error will be thrown.

Possible Causes

  1. The consumer’s concurrent request volume is too high, causing the number of threads created on the provider side to exceed the limit.
  2. The provider side may have blocking threads due to business calls to external application interfaces while executing the business.

Troubleshooting and Resolution Steps

  • Enable Dubbo’s access log feature to check for a large number of RPC service calls in a short period.
  • Use jps and jstack commands to check the status of various threads in the thread pool to see if there are blocking issues caused by business calls to external application interfaces.
  • If the consumer’s concurrent request volume is too high, adjust the provider side’s dubbo.provider.threads parameter to increase the number of Dubbo’s thread pool.
  • If the QPS of the provider’s business is indeed too high and the current number of servers cannot handle it, increase the number of provider servers to share the load.

This error code FAQ page references Kongming’s “Common Dubbo Errors and Solutions”.
The cited article is licensed under CC-BY-4.0, granting rights for compilation. Special thanks to the original author.

Feedback

Was this page helpful?

Yes No

Last modified September 30, 2024: Update & Translate Overview Docs (#3040) (d37ebceaea7)