Mikor számít lassúnak egy webes, üzleti alkalmazás?

Fórumok

Webes fejlesztések kapcsán merült fel bennem, hogy mikor lesz lassú egy oldal? Mikor számít lassúnak? Tudom, hogy ez szubjektív, trollok ide. Tudom, hogy objektív is: amikor az ügyfél szerint lassú, akkor az lassú. :)

De üzemeltetés oldalról nézve, tetszőleges kiszolgálót használva (IIS, Nginx, C# HttpService; nyelv script (PHP) vagy fordított C# dll) egy 30-100ms-os oldalidő soknak számít? A teljes kilengés 30-250ms, a letöltések kevesebb, mint 1%-a éri el az 500ms-ot. A szerver felépítése és gyakorlati tapasztalat alapján az ab.exe-vel mért idők nem nőnek jelentősen, ha az egyidejű oldalletöltés 50 alatt marad, ez kb. 500 bejelentkezett felhasználót jelent.

Gyakorlati tapasztalatokat szeretnék gyűjteni arról, hogy ki-mit tapasztalt, amikor server upgrade-re volt szükség? Tegyük fel, hogy: Külön gépeken (5 node) van az adatbázis és a kiszolgáló...

ps: elsődlegesen üzleti alkamazásokról van szó, tehát több benne a SELECT mint az IMG tag és a JQuery. Emiatt nem statikus tartalom (képek, stream) letöltése fogja a szervert, hanem az adatfeldolgozás.

Köszönöm a tapasztalatok megosztását!

Hozzászólások

Én is 200-250ms párti vagyok. A nagy kérdés csak az, hogy lesz ennél is több felhasználó? És ha lesz, akkor tud-e skálázódni a rendszer több hardverre, vagy pedig programozni kell hozzá? És elég-e egy két query-t optimalizálni, vagy pedig alapjaiban újra kell gondolni az egész rendszert. Na de ez már művészet :-).

Ami talán még sokkal fontosabb a felhasználónak, hogy egy adott funkcióhoz lehetőleg minél kevesebbet kelljen "újratölteni" az oldalt. Az összetartozó infóért ne kelljen lapozni, több adat beviteléhez ne kelljen mindig újrakattintani, ilyesmi. Ha ilyenekre kényszerül a felhasználó azt ő lassúnak fogja érezni még akkor is, ha a válaszidő amúgy kicsi. Szóval a felhasználó ha panaszkodik akkor nem biztos, hogy arra gondol, amit a programozó kihámoz belőle. Érdemes megnézni, hogy hogyan dolgoznak a programmal, és akkor tudsz rajta fejleszteni. Például a gyakran használt beviteli funkcióhoz egy JS alkalmazás ami aszinkron hívogatja a mentés funkciót - és így soha nem kell várni -, sokat jelenthet.

200 ms észrevehető, hogy mennyire zavaró az már más kérdés, engem zavar
40 ms alatt nevezném gyorsnak

Engem csak az zavar, hogy ilyenkor a kedves oldal/site/app tulajdonos hanyatthomlok rohan hozzám, mint sysadminhoz, hogy jajjúristen mi van a szerverrel és hogy jajjdelassú. Miközben mondjuk már átment plazmába a N GB-os adatbázison végzett remekbeszabott műveletektől. Bizonyítani persze mindíg nekem/nekünk kell, csak nagyon ritkán tud bármi konkréttal szolgálni a fejlesztő csapat.

A dolog viszonylag egyszerű. Összeraktok egy elég jó konfigot, akár VPS-el, a konkrét konfigot adott mennyiséggű juzeradattal és kliens számmal tesztelitek. Ez alapján tudtok a kedves juzernek irányszámot mondani, hogy akkor mondjuk 5GB-os adatbázissal X gép kell, 50GB-ossal pedig 3X.

User szemszögből az érdekes, hogy ez alatt mi történik a felületen:
windows 3.1-re emlékeztető szürke homokóra pörög, vagy valami kultúráltabb, érdekes *bármi* ami elvonja a figyelmét. Netalálntán valami *hasznos*, *informatív* szöveg..
---
Referrall https://goo.gl/7S2vlp (koding) | https://goo.gl/muWzKz (digitalocean)

Ha üzleti alkalmazásról van szó, akkor érdemes lenne megnézni, hogy nem lehetne bizonyos részeket ajaxosítani, tehát minimalizálni a teljes oldal letöltést.