Jak zjistím co vydrží můj webhosting

Přiznám se, že mi vrtá otázka co snese webhosting už delší dobu. Podle čeho určit, který toho utáhne víc. Za poslední dva roky se všechno posunulo značně dopředu. Na Webtrhu se střídají nabídky různých provozovatelů. Vzduchem lítají neomezeně anebo technické parametry serverů. Člověk je tak celkem slušně zmatený a musí volit podle referencí, protože jasně stanovené parametry většinou stačí na všechno co běžný smrtelník používá. Takže jak na to? Jak zjistit, kolik toho utáhne váš webhosting?

Služby se momentálně dělí na webhosting, VPS a dedikované servery. Mají jasné technické parametry jako velkost disku a paměti, dále spoustu nejasných jako značka procesoru, disků, druh paměti a tak dále. To nám zase moc už neřekne. Zbytek je softwarové nastavení. To je důležité pro CMS, co na tom pojede.

Zatímco u dedikovaného serveru máme celý výkon jen pro sebe u VPS a Webhostingu se musíme o hardware dělit. Může tak docházet k prodlevám. Ale pro následující odhady se budeme tvářit, že jsou na tom všichni tak nějak stejně.

Na serveru probíhá nějaký výpočetní výkon, ten bývá omezený a pak přenos souborů k uživateli. Ten už většinou limitován není a patří do té kategorie neomezených. Čistě teoreticky by tak stránka pouze s html neměla neomezeným hostingům nijak vadit. I kdyby jí během jedné vteřině navštívilo třeba tisíc lidí. Teoreticky by k záseku mohlo dojít na úrovni nějakého “zacpání sítě”. Jako když si tisíc lidí naráz stahuje velký soubor.

A teď k výpočetnímu výkonu. Budeme předpokládat, že máme neomezeně paměti a přidělené jedno vlákno. Server vygeneruje stránku (začne provádět PHP, sáhne do databáze, pokračuje v PHP a tak dále), odešle (to už se nezapočítává) a jde generovat další. Pokud přijde více dotazů naráz, tak je řadí do fronty a snaží se odbavovat postupně. V momentě kdy přestane stíhat tak se objeví chyba 503. Teoreticky vzato pokud by jsme dokázali spočítat kolik potřebuje server na vygenerování stránky, tak není problém zjistit maximální zátěž.

Třeba tím že na začátek dáme

 <?php $test_rychlosti287 = microtime(); ?>

A na konec

 <?php
 $celkova_rychlost = microtime() - $test_rychlosti287;
 echo $celkova_rychlost;
 ?>

Pokud nám výsledek vyjde 0,5, tak to znamená, že webhosting zvládne utáhnout 2 lidi za vteřinu krát počet přidělených PHP procesů. Ovšem takováto čísla jsou záležitostí dnešních CMS. Například jedno mé minisite dělané v PHP, kde si podle parametrů volí jeden z deseti předpřipravených textů se generuje 0.002 vteřiny. Tedy webhosting by utáhl 500 lidí během jedné vteřiny. Teoreticky jich můžu mít tisíce na jednom multihostingu a nikdo to nepozná.

Optimalizace

CMS mají připravené různé cachovací pluginy. Po jejich zapnutí poznáte rozdíl zvláště u větších webhostingových firem. Ovšem tam je měření výkonu trochu složitější. Pokud například dáte výše zmíněný skript na WordPress. Tak to dopadne zhruba jako tady na cn130. Na stránkách kde je zapnutý se započte jen čas vygenerování a ten se nebude měnit. Řešením je vědět co se generuje a výstup uložit do souboru. Ze zapnutým cachováním utáhnete o nějakého toho člověka víc.

Do výkonu se započítává vše co dělá PHP

Existují například pluginy co si povídají s jinými servery. Jenomže v ten okamžik zablokují celé vlákno a to může být znát. Ne vždy za to tedy může provozovatel. Obdobný problém může teoreticky nastat při nahrávání souborů přes PHP.

Jinými slovy pokud chcete vytěžit maximum, měli by jste dohlédnout na to, aby skripty volané kvůli návštěvníkům čerpaly jen z lokálních informací. Například lišty z odkazy můžete uložit do dočasných souborů a aktualizovat jednou za hodinu Cronem.

Závěr

Takže pro neomezený Webhosting by teoreticky měla platit rovnice:
lidí za vteřinu = 1 / (rychlost generování skriptu / počet vláken)

Hmm teď jen vytvořit modelový WordPress u každého provozovatele si koupit webhosting a začít dělat testy 🙂


Jak bude reklama vypadat?
-
Nechceš zde reklamu napořád jen za 60 Kč?
Zobrazit formulář pro nákup

3 komentáře

  1. Benchmark webhostingů by se určitě hodil, a příklad s modelovým WP není špatný nápad. Založíme v tomto oboru certifikační autoritu 🙂
    Přidám své statistiky z webhostingu u Wedosu:
    1) Minisite co používá PHP pouze pro include menu, sidebaru a patičky – 0,001s
    2) WordPress + cca 5 pluginů (agregator s 10K záznamy v DB) – 0,5s až 1s

    1. Viktor: nad tím jsem taky přemýšlel. Problém je, že webhosting je sdílený, takže ti je schopný WP stránku vygenerovat za 0,02 vteřiny ale klidně i za 0,9 :/

      Ale ten rozdíl mezi minisite a WP je fakt drsnej 🙂

  2. Benchmark hostingu, potažmo VPS, asi nebude úplně objektivní, třeba právě kvůli onomu sdílení s ostatními zákazníky, případně díky aktuálnímu vytížení. Zkoušel jsem si to na svých VPS a výsledky testů jsou v čase dost rozdílné. 🙂

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna.