База данных грузит CPU в 100%. В чем может быть дело?
Салют всем, уже 3 дня мучаюсь с БД (MariaDb). Сразу скажу, слабо разбираюсь в этом вопросе, но честно пытался решить сам. В общем, есть активный проект, стоит на Intel Xeon E5 (cores 2 vCPU).
Версия сервера: 5.5.56-MariaDB.
Поначалу, всё было в порядке, однако сейчас проект разросся и база данных пользователей увеличилась.
На данный момент ситуация такая, что если 30 пользователей к примеру пытаются активировать промокод, то CPU взлетает до 100%, сайт просто не открывается.
Запросы уже оптимизировал насколько умею, перечитал про индексы и прочее, тяжелые таблицы оптимизировал с помощью Optimise и всё равно происходит та же картина.
Ещё важный момент, если заходить в PMA и пытаться там шастать, то периодически (очень часто), можно словить бесконечную загрузку, страница не загрузится пока ты не обновишь её. Это происходит при входе в таблицу, либо при выходе на главный экран PMA, либо при заходе в поиск, не важно, просто кидает в мертвую загрузку и это, как мне кажется самая главная проблема, но её источник мне неизвестен.
На машине также стоит проксирование (защита от ддос), но оно не действует естественно на локальные запросы. Заранее всем спасибо!
Вот тут всё сложнее. Сам скрипт делали другие люди, предположительно он под mysql писался и предположительно структура далека от идеала. Но всё же не должна ведь она прям так ужасно себя вести, тем более, что ввели индексы и запросы объединили максимально. Настройки сервера дефолтные. Максимум, что могу сказать, что сначала мы сидели на VPS (была старая верстка), с новой версткой переехали на VDS и позже уже началось это всё. Тогда не мониторили как себя ведет, ибо не беспокоило