Облачный Хостинг
Облачный Хостинг
@cloud_hosting_ru_n1k

Оптимизация базы данных: что замедляет сайт больше всего.

Оптимизация базы данных: что замедляет сайт больше всего.

По статистике, 70–80% времени загрузки типичного сайта на CMS уходит на запросы к базе данных. Оптимизация кода и хостинга даёт 20–30% прироста, оптимизация базы — остальное.

Чаще всего замедляют работу:

Отсутствие индексов. Индекс — это как оглавление в книге. Без него база просматривает всю таблицу для каждого запроса. С индексом находит нужные строки мгновенно. Для таблицы с миллионом записей разница — секунды vs миллисекунды.

N+1 запрос. Классическая проблема: программа делает 1 запрос для получения списка, потом ещё N запросов для каждого элемента. Итого N+1 запросов вместо одного с JOIN.

Большие SELECT *. Запрос выбирает все колонки, хотя нужны только две-три. Лишние данные передаются из базы и занимают память.

Настройка кэширования базы данных. MySQL и PostgreSQL имеют встроенный кэш запросов. Правильная настройка буферных пулов может дать прирост производительности без изменения кода.

Инструменты для диагностики: EXPLAIN в MySQL/PostgreSQL покажет план выполнения запроса и укажет на проблемные места. slow_query_log включит журнал медленных запросов. Анализ логов за неделю обычно выявляет 3–5 запросов, которые дают 80% нагрузки.
Этот пост опубликован в Telegram-канале Облачный Хостинг. Подписаться можно по ссылке: @cloud_hosting_ru_n1k.
tech

Свежие посты в категории «Tech Infrastructure»

Все каналы категории →

start

Готовы запустить рекламу через сеть public.tg?

Новый оффер, продукт, GEO, кейс, событие или партнёрский запуск — соберём маршрут под задачу и отдадим медиаплан.

Telegram для медиаплана: @AFFtop_connect. Быстрый тест: $20 за канал, $1000 за пакет по сети.