dragonls commented on PR #4266:
URL: https://github.com/apache/bookkeeper/pull/4266#issuecomment-3160057721

   In our case, we are using `/api/v1/ledger/list` to get the ledgers in 
bookie, which may run more than 30 seconds due to lots of ledgers. At the same 
time, all the other http request will be blocked, such as `/metrics` or even 
`/heartbeat`.
   
   We found that if we update the code to:
   ```
           HttpRouter<VertxAbstractHandler> requestRouter = new 
HttpRouter<VertxAbstractHandler>(handlerFactory) {
               @Override
               public void bindHandler(String endpoint, VertxAbstractHandler 
handler) {
                   router.get(endpoint).blockingHandler(handler, false);
                   router.put(endpoint).blockingHandler(handler, false);
                   router.post(endpoint).blockingHandler(handler, false);
                   router.delete(endpoint).blockingHandler(handler, false);
               }
           };
   ```
   then the http requests could be run concurrently.
   
   Is there any reason to use `.blockingHandler(handler)` instead of 
`.blockingHandler(handler, false)`?
   


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