Большая нагрузка на сервер
У меня на сервере стоит hestia. Использую mysql+php. Проект работает по следующему принципу:
человек заходит на index.html, там я ловлю нужные от него данные и отправляю на свой php файл с помощью js. Там в базе я делаю несколько выборок (каждая выборка - это лишь одна строка, целую кучу я не беру). Таблицы, из которых беру строку для проверки -в основном маленькие, но одна из них на 1.5 миллиона записей(но из неё я тоже беру только 1 уникальную по условию строку, с limit 1). Если все условия пройдены - добавляю в эту большую таблицу новую строку с этим человеком, возвращаю ответ себе же в js и делаю редирект на нужную html страничку в зависимости от ответа.
При точечной нагрузке в моменте примерно в 2-3 человека в секунду сервер начинает показывать огромные цифры нагрузки (600% cpu), люди, вроде, добавляются, если судить по логам, но ответ от сервера не доходит (мой скрипт через какое-то время возвращает 504 ошибку), в итоге редирект не происходит. Вот конфигурация сервера:
Я понимаю, что информации не так много, но хотелось бы послушать людей на опыте, которые, возможно, сталкивались с подобным и находили какие-то решения. Я знаю много всего, что может повлиять, но не понимаю, как определить точечно проблему, не тыкая пальцем в небо. Заранее благодарю за любую подсказку.
Ответы (1 шт):
По итогу я создал общий индекс на два поля, по которым произвожу поиск, а так же выделил 9 гигов оперативы. Пока нет возможности проверить, решило ли это саму проблему, но ручной запрос к таблице теперь вместо 2 секунд занимает 0.003, что похоже на решение проблемы. Спасибо комментатору @Ипатьев за подсказки.
UPDATE 31.07.24 Проблема действительно решилась, убедился на практике, всё отработало, сервак не умер