Jason918 opened a new pull request #14494:
URL: https://github.com/apache/pulsar/pull/14494


   ### Motivation
   1. Pick a proper receiver queue size is not an easy thing. If the value is 
too small, it impact the throughput, and if the value is too large, it consumes 
too many memory. With default set up, the queue size is 1000, and the max 
message size is 5MB, this means maximum of 5GB memory occupation.
   
   3. This is part of the work for [PIP 
74](https://github.com/apache/pulsar/wiki/PIP-74%3A-Pulsar-client-memory-limits).
 We need auto scale `currentReceiverQueue` to control client memory. 
   
   ### Modifications
   
   Add optional  autoScaledReceiverQueueSizeEnabled for consumer client.
   
   ### Verifying this change
   
   - [x] Make sure that the change passes the CI checks.
   
   This change added tests and can be verified as follows:
   
   *(example:)*
     - org.apache.pulsar.client.impl.AutoScaledReceiverQueueSizeTest
     
   ### Does this pull request potentially affect one of the following parts:
   
   *If `yes` was chosen, please highlight the changes*
   
     - Dependencies (does it add or upgrade a dependency): (no)
     - **The public API: (yes, add a config for consumer builder)**
     - The schema: (no)
     - The default values of configurations: (no)
     - The wire protocol: (no)
     - The rest endpoints: (no)
     - The admin cli options: (no)
     - Anything that affects deployment: (no)
   
   ### Documentation
   
   Check the box below and label this PR (if you have committer privilege).
   
   Need to update docs? 
     
   - [x] `no-need-doc` 
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to