jvz opened a new issue, #2220:
URL: https://github.com/apache/logging-log4j2/issues/2220

   The current async logger functionality all relies on the LMAX Disruptor 
library. This library does not support resizable queues which requires end 
users to configure a large enough ring buffer for their application use case. 
As such, the default settings in Log4j allocate between 80 and 140 MB of memory 
for async logging ring buffers which are likely too large for microservices and 
other more modern use cases in memory constrained environments.
   
   JCTools provides a growable MPSC (multi-producer single consumer) queue 
which would be a great alternative to using Disruptor in use cases where memory 
allocation is preferred over blocking or discarding log messages when the queue 
is full. This would allow for a smaller default queue size that could safely 
grow to fit an application's typical logging throughput.
   
   This feature is a high level description of the problem. Given the large API 
differences between LMAX Disruptor and JCTools, I'm not sure on what this would 
look like specifically.


-- 
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: notifications-unsubscr...@logging.apache.org.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to