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

Ladění výkonu

Analýza pomalých dotazů MySQL

Devět z deseti pomalých webů jsou pomalé databáze v kostýmu webu. Systematická analýza pomalých dotazů, logování, seskupení podle celkového dopadu, plány EXPLAIN a návrh indexů mění záhadnou pomalost v seřazený seznam oprav, s měřenými přínosy po každé změně.

Klíčové body

  • Zapněte logování pomalých dotazů a dotazů bez indexu s rozumnými prahy long_query_time.
  • Agregujte pomocí pt-query-digest: seřaďte podle celkového času, ne podle nejhoršího dotazu.
  • Čtěte správně výstup EXPLAIN: typ přístupu, použitý index, prohlédnuté řádky proti odeslaným.
  • Navrhněte pokrývající indexy pro horké cesty a odstraňte překrývající se, nadbytečné indexy.
  • Opravte vzory N+1 v kódu aplikace; žádný index nezachrání upovídané smyčky.
  • Nastavte velikosti pro dočasné tabulky, join buffery a pool InnoDB na základě důkazů.
  • Po každé změně znovu měřte špičkové dotazy a veďte si deník výkonu.
  • Plánujte opakované analýzy; růst dat potichu znehodnocuje staré plány.

Časté dotazy

Proč je web pomalý, když je procesor volný?

Klasické čekání databáze: dotazy stojí ve frontě, zatímco procesor je volný. Logy to prokážou během minut.

Jak velký je typický přínos?

Desetkrát až stokrát na opravených dotazech je rutina; po úplném průchodu 2-5krát na celém webu.

Ovlivňuje analýza produkci?

Režie logování je asi 1 %; analýza probíhá mimo produkci, na kopiích logů.

A Percona nebo MariaDB?

Stejná metodika s detaily specifickými pro engine; ladíme MySQL, MariaDB i Percona Server.

Jak Kinetikatech pomáhá s ladění výkonu

Dnes děláme tohle: Ladění serveru, optimalizace databází, cache a práce na rychlosti rozhraní, které zkracují doby načtení a náklady na hosting. Naše služba Optimalizace rychlosti webu a Správa serverů pokrývá vše od posouzení po nasazení, nepřetržitý dohled a pohotovostní zásah do 30 minut.

Promluvte si s inženýrem

Problém se serverem? Hacknutý web? Pomalé načítání?

Kritické problémy vyřešeny do 30 minut — nepřetržitě, 7 dní v týdnu.

Požádat o pohotovostní podporu support@kinetikatech.com