keyboardbobo opened a new issue #13523:
URL: https://github.com/apache/pulsar/issues/13523


   **Is your enhancement request related to a problem? Please describe.**
   I have nine brokers,when I kill one, the traffic of the remaining eight 
brokers will drop within 30 seconds, reach a peak after 30 seconds, and then 
return to normal. I found that the sending thread is blocked: 
   `
       private boolean canEnqueueRequest(SendCallback callback, long 
sequenceId, int payloadSize) {
           try {
               if (conf.isBlockIfQueueFull()) {
                   if (semaphore.isPresent()) {
                       semaphore.get().acquire();
                   }
   ..
   `
   In other words, if the Producer queue corresponding to some partitions is 
full, the sending thread will be blocked, affecting the sending of other 
partitions
   
   **Describe the solution you'd like**
   Isolate partitions to avoid sending each other
   
   **Describe alternatives you've considered**
   PartitionedProducerImpl can automatically exclude Producers whose queues are 
full
   
   


-- 
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