Autor Zpráva
tane
Profil
Ahoj,
potřeboval bych radu, po čem se pídit, pokud mám pomalý web, když ve špičce:
1) vytížení procesoru do 65 %
2) volná RAM kolem 1 GB
3) konektivita s dostatečnou rezervou (a rychlost stahování je dobrá, jedná se o pomalost při načtení stránky)
4) I/O operace v řádu desítek až stovek kB/s
5) mytop jen výjimečně ukáže jiný dotaz, jak show processlist a pár, řekněme kolem desítky, sleepů

Mám podezření na databázi, ale je mi divné, že v mytopu nevidím žádné čekající dotazy a že si databáze nevezme víc paměti, pokud jí potřebuje. Snažil jsem se projít, jestli mám všude správě indexy atp. ale víc mě teď nenapadá. Můžete mě někdo nakopnout? :) Díky
Joker
Profil
tane:
Tak v první řadě, jsou pomalé všechny stránky (třeba i nějaké jednoduché statické HTML), nebo jen nějaká (nějaké) konkrétní?

Všechny by znamenaly problém s připojením anebo nastavením serveru, jen nějaké by spíš ukazovaly na problém s kódem.

Dál problematickou stránku otevřít v prohlížeči v profileru a podívat se, na co se čeká (na hlavní stránku, na nějaký obrázek, na klientský skript).

No a podle toho pak zaměřit další pátrání.
tane
Profil
Jsou pomalé všechny, které používají připojení k databázi. Kliknu na odkaz, pak třeba 15 sekund čekám a pak se zobrazí celá stránka prakticky hned. Mám pocit, jako bych někde zapomněl na nějakým sloupci index, ale tabulek je hodně a i když jsem je všechny prošel, nenašel jsem důležitý sloupec, na kterým by index chyběl. A taky si myslím, že kdyby chyběl index, tak by ta databáze vyčerpala CPU nebo RAM?
juriad
Profil
Tak si pro začátek počítej čas, který se stráví dotazem do databáze a na konci stránky si ty časy vypiš. Také je možné, že reálně provádíš příliš mnoho dotazů, spočítej si je.
tane
Profil
Jo, vidíš, to je skvělej nápad počítat si časy dotazů, díky :) A ano, provádím celkem dost dotazů, ale to by neměl být problém, pokud na to stačí výkon serveru, ne?
juriad
Profil
Pokud provádíš nějaký dotaz v cyklu, může dost pravděpodobně být zdrojem problémů. Kvůli smyčce se pak může vykonávat třeba stokrát.
tane
Profil
Tak sestavení stránky, teď ve špičce (microtime na začátku a na konci) 1 sekunda, přitom podle Chromu je latence u index.php 21,36 sekund. Takže to asi problém s databází nebude?
Davex
Profil
tane:
Jsou pomalé všechny, které používají připojení k databázi.
Jednoduchý PHP skript se tedy načítá rychle?
<?php echo "OK";

Tak sestavení stránky, teď ve špičce (microtime na začátku a na konci) 1 sekunda, přitom podle Chromu je latence u index.php 21,36 sekund.
Nejsou nějaké chyby v chybovém logu webserveru nebo v systémovém logu?
Kajman
Profil
tane:
A nemáte tam nějaký ten fejsbůk nebo tak něco?
tane
Profil
Davex
Ano, jednoduchý php skript jde rychle. A chyby v syslogu ne a ve webserveru sem tam nějaká 404, ale těch je pár do hodiny (já vím, to taky opravím, ale to tyhle problémy určitě nedělá :) )

Kajman:
Nene, nic takového. Z cizích věcí tam mám jen google analytics.


Teď dokonce se ta stránka otevírala 29s, přitom počítání od začátku do konce přes microtime 0,016 s.
_es
Profil
tane:
Nemáš na stránke link na nejaký neexistujúci súbor (JS, CSS a pod.)? Ak chceš namiesto slepého tipovania nejakú konkrétnejšiu radu, dodaj „živú“ ukážku.
muflix
Profil *
Neběží tam nějakej js, který vytěžuje klientský počítač ? Dělá to na všech počítačích ? Ten profiler je asi nejrozumnější řešení jak to zjistit.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: