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

Ladění výkonu

Návrh indexů databáze

Indexy jsou nejsilnější zásah do databáze: dobře zvolený složený index změní několikaminutové reporty na milisekundy, zatímco špatný jen zatíží každý zápis. Profesionální návrh vychází ze skutečných vzorů dotazů, respektuje pravidlo levého prefixu a redukuje stejně agresivně, jako přidává.

Klíčové body

  1. Navrhujte z slow-logu a inventáře dotazů aplikace, ne z odhadů.
  2. Stavějte složené indexy s respektem k levému prefixu a pořadí selektivity.
  3. Upřednostněte pokrývající indexy pro nejhorkější čtecí cesty.
  4. Čtvrtletně odstraňujte duplicitní, nadbytečné a nikdy nepoužité indexy.
  5. Počítejte s amplifikací zápisů: každý index zatěžuje INSERT, UPDATE a DELETE.
  6. Používejte prefixové a částečné indexy tam, kde úplné plýtvají prostorem.
  7. Ověřujte pomocí EXPLAIN před a po; plány musí prokázat přínos.
  8. Zdokumentujte důvod každého indexu, aby budoucí vývojáři neodstranili indexy, na kterých vše stojí.

Časté dotazy

Znamená více indexů rychleji, správně?

Ne, čtení získávají, zápisy platí. Uměním je minimální množina, která pokryje horké cesty.

Jak najdete nepoužité indexy?

Statistikami z performance_schema za celé obchodní cykly, poté postupné odstranění s návratem.

Co se pokazí nejčastěji?

Indexy na jednom sloupci pro podmínky na více sloupcích a chybějící indexy za náhlým růstem.

Mění ORM přístup?

Skrývají dotazy, ne náklady; sledujeme výstup ORM až ke stejné analýze.

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

Nemusíte se stát odborníkem na ladění výkonu: Ladění serveru, optimalizace databází, cache a práce na rychlosti rozhraní, které zkracují doby načtení a náklady na hosting. Přesně proto existuje Optimalizace rychlosti webu a Správa serverů: zprovoznění, zpevnění, monitoring a člověk ve službě dnem i nocí.

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