You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Our program creates many DefaultMQProducer instances (for several clusters).
After initializing DefaultMQProducer, we set the instanceName.
Previously, in version 5.3.0, the ProduceAccumulator was created in its constructor at a time when the instanceName was still "DEFAULT". As a result, only one ProduceAccumulator was created.
After upgrading to version 5.3.2, the creation of ProduceAccumulator was moved to the start method. This change caused the creation of many ProduceAccumulator instances (more than 80).
Each ProduceAccumulator maintains two threads that continuously loop, consuming a significant amount of CPU resources.
At the same time, it was discovered that libjvm.so.java_start is also consuming a significant amount of resources. It is suspected that this is related to frequent lock contention and thread context switching caused by the two threads inside ProduceAccumulator.
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Beta Was this translation helpful? Give feedback.
All reactions