Я работаю с java-приложением, используя базу данных H2 во встроенном режиме. Мое приложение потребляет 150 МБ кучи памяти.
Проблема:Шаги Когда я загружаю базу данных H2 с 2 МБ данных, доступ к базе данных происходит быстро, а размер кучи составляет 160 МБ.
Но когда я загружаю базу данных H2 с 30 МБ данных (размер файла h2 db = 30 МБ ). Тогда доступ к базе данных из моего приложения очень медленный. причина в том, что размер кучи моего приложения сильно вырос до 300 МБ, что привело к снижению производительности. Я подтвердил использование JConsole.
Насколько я понимаю, поскольку база данных H2 разработана с использованием java, и поскольку я использую базу данных H2 во встроенном режиме, размер кучи базы данных H2 добавляется в мое приложение, что нарушает работу приложения.
Проблема в том, что по мере роста размера базы данных H2 производительность моего приложения снижается.
Как решить проблему?
Я указал соединение как
rurl = "jdbc:h2:file:/" + getDBPath() + dbname + ";CACHE_SIZE=" + (1024 * 1024) + ";PAGE_SIZE=512";
для увеличения кеша H2.