Помогите SQL 'Connection' вызывает лаги и скачки памяти. Также отключение занимает много времени.

Абсик

Активный участник
Пользователь
Баллы
76
Имя в Minecraft
Abcik
Всем привет!

Столкнулся с проблемой, когда проводил тесты базы данных под нагрузками.

В общем, у меня есть SQL подключение. Я начинаю делать кучу запросов в базу (Примерно по 1к в секунду), всё нормально работает, но, когда я делаю определённое кол-во запросов (Около 80.000) память сервера начинает загружаться прыжками к отметке в 100%. Даже если я останавливаю запросы - прыжки памяти прекращаются, но как только я снова начинаю делать 1к запросов в секунду - моментально происходит скачок памяти, и у меня зависает не то, что сервер, а целый комп, как будто.

Помогает лишь переподключение к базе, но это не выход, так как отключение занимает кучу времени (около 13 секунд). (Как будто он что-то сохраняет, но я не могу понять что, и как это выключить, чтобы оперативная память не отнималась?)

После переподключения я снова могу делать 1к запросов в секунду без лагов, но опять же, до поры пока не сделаю около 80к запросов.

! Все запросы на чтение данных.

2.png

Код который я использую:
1.png

3png.png
 
PreparedStatement-ы и ResultSet-ы нужно закрывать.
проще всего делать через try-with-resources
https://stackoverflow.com/a/8066594
если бы скинул код текстом а не скриншотами я бы даже поправил как надо, но надеюсь сам справишься)
не факт что твоя проблема из-за этого, но вполне вероятно. закрывая коннект ты как раз закрываешь и все что с ним связано
 
PreparedStatement-ы и ResultSet-ы нужно закрывать.
проще всего делать через try-with-resources
https://stackoverflow.com/a/8066594
если бы скинул код текстом а не скриншотами я бы даже поправил как надо, но надеюсь сам справишься)
не факт что твоя проблема из-за этого, но вполне вероятно. закрывая коннект ты как раз закрываешь и все что с ним связано
Да, помогло, спасибо!
 
Назад
Верх