Задать вопрос
Ответы пользователя по тегу MySQL
  • Как организовать масштабирование/отказоустойчивость интернет-магазина?

    smilingcheater
    @smilingcheater
    Если без значительного переписывания кода:
    Вынести БД на отдельный сервер. При росте нагрузки - добавлять сервера и настраивать репликацию между ними.
    Сделать отдельный балансировщик - сервер, на который приходят запросы, и который раскидывает их на разные сервера, выполняющие код. При увеличении нагрузки - увеличивать число нод, выполняющих код. Если одна из нод по какой-то причине перестаёт отвечать - остальные продолжают работать.
    Если у вас сессии хранятся в файлах - придётся переносить их хранение в базу/Redis/...
    Ответ написан
    2 комментария
  • Как найти метод с медленным запросом к БД и как сократить время выполнения?

    smilingcheater
    @smilingcheater
    У вас эти картинки реально на файловой есть? Выглядит так, будто картинки нет, вместо неё возвращается 404, которая отдаётся битриксом. Я бы предложил открыть в браузере 404, включить битриксовую отладку (панель эрмитажа, развернуть, кнопка "Отладка") и в выведенной отладочной информации искать виновника.

    На вашем скрине в статистике время выполнения запросов порядка 0.25-0.35 сек, но время выполнения всей страницы доходит до 4-5 сек. Выглядит так, будто какой-то тяжёлый компонент на 404 работает с выключенным кешированием.

    А ещё лучше - настроить, чтобы картинки отдавал NGINX, и 404 на картинки тоже он.
    Ответ написан
    1 комментарий