merlimat opened a new pull request, #3546: URL: https://github.com/apache/bookkeeper/pull/3546
### Motivation `OrderedExecutor` is used extensively throughout the BK codebase and its performance is critical when there are many small entries. In the past we have experimented with different `BlockingQueue` backends inside the JDK default `ThreadPoolExecutor` implementation. The main problem with `ThreadPoolExecutor` is that is not using the `drainTo()` to avoid contention, because it's not making any assumptions on the queue type. If we assume an array based queue (like `ArrayBlockingQueue`), then the `drainTo()` makes it much more efficient. A single executor with 16 thread submitting tasks can now process 46M tasks/s -- 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]
