NOC online · 24/7Longview, TX · +1 323 412 0665
KinetikatechServers · Security · Websites
RU

Оптимизация производительности

Проектирование индексов базы данных

Индексы — самая результативная работа с базой: правильный составной индекс превращает минутный отчёт в миллисекунды, а неудачные индексы только нагружают каждую запись. Профессиональное проектирование индексов начинается с реальных шаблонов запросов, учитывает правило самого левого префикса и так же агрессивно удаляет лишнее, как и добавляет.

Главное

  • Проектировать по журналу медленных запросов и перечню запросов приложения, а не по догадкам.
  • Строить составные индексы с учётом самого левого префикса и избирательности.
  • Отдавать предпочтение покрывающим индексам для самых горячих путей чтения.
  • Раз в квартал удалять дублирующие, избыточные и неиспользуемые индексы.
  • Помнить про усиление записи: каждый индекс утяжеляет INSERT, UPDATE и DELETE.
  • Применять префиксные и частичные индексы там, где полные тратят место впустую.
  • Проверять через EXPLAIN до и после: план должен доказать выигрыш.
  • Документировать обоснование индексов, чтобы будущие разработчики не выбросили несущие.

Частые вопросы

Больше индексов — значит быстрее, верно?

Нет, чтение выигрывает, а запись платит. Искусство — подобрать минимальный набор, покрывающий горячие пути.

Как найти неиспользуемые индексы?

По статистике performance schema за полные бизнес-циклы, затем поэтапное удаление с возможностью вернуть.

Что ломается чаще всего?

Односоставные индексы на многосоставных условиях выборки и отсутствие индексов там, где объёмы внезапно выросли.

Меняют ли ORM подход?

Они прячут запросы, а не их цену: мы трассируем вывод ORM обратно в тот же анализ.

Как мы берём на себя оптимизация производительности

Вам не обязательно становиться экспертом в оптимизация производительности: Настройка серверов, работа с базами данных, кэширование и ускорение фронтенда, которые сокращают время загрузки и расходы на хостинг. Именно для этого и существует наша услуга Оптимизация скорости сайтов и Администрирование серверов — настройка, усиление защиты, мониторинг и живой человек на связи днём и ночью.

Поговорить с инженером

Проблема с сервером? Взломанный сайт? Медленная страница?

Критические инциденты с ответом в течение 30 минут — круглосуточно, 7 дней в неделю.

Запросить экстренную поддержку support@kinetikatech.com