Video: Scalable Memory Allocation using jemalloc Tech Talk (1/11/2011)
Chronicle by Peter Lawrey:
This library is an ultra low latency, high throughput, persisted, messaging and event driven in memory database. The typical latency is as low as 80 nano-seconds and supports throughput of 5-20 million messages/record updates per second.
This library also supports distributed, durable, observable collections (Map, List, Set) The performance depends on the data structures used, but simple data structures can achieve throughput of 5 million elements or key/value pairs in batches (eg addAll or putAll) and 500K elements or key/values per second when added/updated/removed individually.
There is no sense to run profiler in instrumentation mode on a high load.
Instead of using instrumentation you should use sampling mode.
This article describes the difference between instrumentation and sampling modes. JVisualVM is a good free tool for this task.
When configuring executors in multithreaded application, do not forget to assign names to your threads. It simplifies later profiling a lot, when you see a meaningful thread names in your profiler.
For example, you may use CustomizableThreadFactory from SpringFramework for that.
Never miss a story, subscribe to our newsletter