Našumo optimizavimas
MySQL lėtų užklausų analizė
Devynios iš dešimties lėtų svetainių yra lėtos duomenų bazės, vilkinčios svetainės kostiumą. Sisteminga lėtų užklausų analizė, žurnalizavimas, grupavimas pagal bendrą poveikį, EXPLAIN planai ir indeksų projektavimas paslaptingą lėtumą paverčia tvarkingu taisymų sąrašu su išmatuotais laimėjimais po kiekvieno pakeitimo.
Pagrindiniai punktai
- Įjunkite lėtų ir indekso nenaudojančių užklausų žurnalizavimą su pagrįstais long_query_time slenksčiais.
- Agreguokite su pt-query-digest: rikiuokite pagal bendrą laiką, o ne pagal blogiausią užklausą.
- Teisingai skaitykite EXPLAIN rezultatą: prieigos tipą, naudojamą indeksą, peržiūrėtas eilutes prieš grąžintas.
- Projektuokite dengiančius indeksus karštiems keliams ir šalinkite persidengiančius, nereikalingus indeksus.
- Taisykite N+1 šablonus programos kode; joks indeksas neišgelbsti kalbaus ciklo.
- Koreguokite laikinųjų lentelių, join podėlių ir InnoDB baseino dydžius pagal įrodymus.
- Po kiekvieno pakeitimo matuokite viršūnių užklausas iš naujo ir veskite našumo žurnalą.
- Planuokite pasikartojančias analizes; duomenų augimas tyliai panaikina senus planus.
Dažniausiai užduodami klausimai
Kodėl svetainė lėta, kai procesorius laisvas?
Klasikinis duomenų bazės laukimas: užklausos laukia eilėje, kol procesorius laisvas. Žurnalai tai įrodo per minutes.
Koks tipinis laimėjimas?
Nuo dešimties iki šimto kartų sutaisytose užklausose – įprasta; po viso ėjimo 2–5 kartai visoje svetainėje.
Ar analizė paveikia produkciją?
Žurnalizavimo pridėtinė našta apie 1 %; analizė atliekama ne produkcijoje, su žurnalų kopijomis.
O Percona ar MariaDB?
Ta pati metodika, su varikliui būdingomis detalėmis; reguliuojame MySQL, MariaDB ir Percona Server.
Kaip Kinetikatech padeda su našumo optimizavimas
Štai ką darome šiandien: Serverio reguliavimas, duomenų bazių optimizavimas, podėlis ir sąsajos greičio darbai, mažinantys įkėlimo laikus ir hostingo išlaidas. Mūsų paslauga Svetainės spartos optimizavimas ir Serverių administravimas apima viską — nuo vertinimo iki įgyvendinimo, stebėjimo 24/7 ir skubaus reagavimo per 30 minučių.