У нас возникают проблемы с пользователями, выполняющими запросы / просмотры в Drupal, которые иногда приводят к зависанию нашего сайта. Замораживание происходит из-за того, что запрос приводит к тому, что число подключений к базе данных увеличивается до 400+, и в основном каждый раз, когда сайт переходит более 100 подключений к базе данных, сайт ужасно замедляется и просто не отвечает.
Мы запускаем Amazon RDS, используя MySQL Red Hat Linux
У нас достаточно большой EC2 на сервере приложений и достаточно большой RDS.
Теперь мы решаем эту проблему, чтобы найти ошибочный запрос и убить его. Как только запрос убит ... количество подключений к нашей базе данных падает до 20, что является нормальным показателем, который вы видите при мониторинге статистики сайта.
Есть ли способ остановить ошибочный запрос и завершить его до того, как он запустится слишком долго и использует соединения? Я пытаюсь автоматизировать уничтожение плохого запроса до того, как это произойдет, или, по крайней мере, через 30 секунд понять, что это плохой запрос, и уничтожить его.