Hello, I think I‘ve already answered both of these question in previous threads, but if you missed it:
* You should be able to see what’s going on memory wise in Artemis and JVM (including all the memory used by the Netty https://artemis.apache.org/components/artemis/documentation/latest/metrics.html#netty-allocator) using Artemis Prometheus Metrics plugin https://github.com/rh-messaging/artemis-prometheus-metrics-plugin. * Yes, if you don’t explicitly define direct memory with -XX:MaxDirectMemorySize it set to the same _inferred_ value of the Heap. That’s of course assuming that you are using OpenJDK. See the following source code for OpenJDK 17 https://github.com/openjdk/jdk/blob/dfacda488bfbe2e11e8d607a6d08527710286982/src/java.base/share/classes/jdk/internal/misc/VM.java#L252 -- Vilius From: Shiv Kumar Dixit <[email protected]> Sent: Tuesday, February 24, 2026 12:41 PM To: [email protected] Subject: Checking Direct Memory Usage of broker Hi, What is the best way to directly check memory usage of broker? It is not listed in native memory tracking. Broker GUI > JMX > java.nio > BufferPool – if this give direct memory usage of broker at the moment? Also, if we don’t explicitly define direct memory, does it take same as max heap or it goes even beyond that? Thanks Shiv
