Используйте JDBC для проверки памяти (RAM), используемой в запросах - PullRequest
1 голос
/ 16 мая 2019

Мне нужно проверить память, используемую при выполнении запросов.У меня уже есть JDBC, связанный с моей базой данных в MYSQL.И я также знаю, как выполнять запросы.Но я не знаю, как проверить память, используемую при выполнении запросов.Это для сравнения памяти и времени.Я использую NetBeans.

Спасибо

Ответы [ 2 ]

0 голосов
/ 20 мая 2019

Вы можете использовать com.sun.management.ThreadMXBean.getThreadAllocatedBytes(long id), чтобы получить ок.количество байтов, используемых потоком.https://docs.oracle.com/javase/7/docs/jre/api/management/extension/com/sun/management/ThreadMXBean.html#getThreadAllocatedBytes(long)

Когда ваше JDBC-соединение, оператор и наборы результатов выполняются потоком, вы можете получить ок.объем памяти, используемый потоком путем предоставления идентификатора потока.

Refer- Будет ли ThreadMXBean # getThreadAllocatedBytes возвращать размер выделенной памяти или объектов?

0 голосов
/ 17 мая 2019

Если вы имеете в виду использование памяти на сервере базы данных (через JDBC), вы не можете.Спросите об этом администратора базы данных.

Если это для вашего приложения или для сервера приложений, то вы можете использовать Runtime.getRuntime (). FreeMemory () , чтобы получить использование памяти до и послевызов базы данных / JDBC.

Более того, вы можете сделать это удаленно, используя JMX.В этом вам может помочь простейшее использование JConsole.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...