Windows - Webszerver terhelés teszt

Resource Kit alkalmazások 5. rész

Mielőtt ténylegesen üzembe helyeznénk egy webszervert, célszerű futtatni rajta egy terhelés tesztet. Ne akkor derüljön fény a szűk keresztmetszetekre, elégtelen hardverre, amikor már élesben működik. Több tesztprogram is elérhető hasonló célzattal, mi a Resource Kit csomagban megjelent egyik alkalmazást mutatjuk be, ami kevés gépről nagyszámú felhasználó (alapértelmezésben: 200) egyidejű csatlakozását szimulálja. Ezzel igazán próbára tehetjük az IIS-t és az egész gépet...
Resource Kit alkalmazások
A Resource Kit CD főkönyvtárában lévő SETUP.EXE futtatásával számos segédprogram és dokumentáció kerül a merevlemezre, de sok érdekes alkalmazás marad a CD-n, érintetlenül. Ezek a \APPS könyvtárból nyíló alkönyvtárakban találhatók meg.
Ma sorra kerülő alkalmazásunk a \APPS\WEBSTRESS mappában lévő "setup.exe" futtatásával telepíthető.
Microsoft Web Application Stress Tool indítása
Telepítés után a Programok > Microsoft Web Application Stress Tool > Microsoft Web Application Stress Tool ikonnal futtatható a tesztalkalmazás. Egy új szkript létrehozását végző varázsló jelenik meg először. Semmi szükségünk rá, nyomjuk le az ESC billentyűt. Legtöbb esetben elegendő a programhoz kapott "Sample Script" használata. Mi a szkript? Tulajdonképpen egy beállításhalmaz, amit ezzel a névvel illetnek. Tartalmazza a felhasználók számát, cookie-k számát, teljesítményszámláló objektumokat, egyéb beállításokat és még sok minden mást.
Mielőtt rátérnénk a program működésének ismertetésére, szükség van bizonyos előkészületek elvégzésére.
Használat előtti előkészületek
Telepítsük fel a Web Application Stress Tool-t az egyik kliens gépre, amelyről elérhető a webszerver. Legjobb, ha a kliens és a kiszolgáló között ugyanaz a hálózati kapcsolat, mint ami lesz az "éles" felhasználók és a kiszolgáló között.
Másoljuk át a %Program Files%\Microsoft Web Application Stress Tool\samples mappa tartalmát a kiszolgálóra (pl. a \inetpub\wwwRoot\samples mappába). Indítsuk el a szerveren az "Internet szolgáltatáskezelő" ("Internet Services Manager") felügyeleti konzolt. Tallózzunk el az alapértelmezett webhelyre és hozzunk létre egy új virtuális könyvtárat, amely az átmásolt fájlokat tartalmazó mappára mutat.
Microsoft Web Application Stress Tool használata
A tesztelés megkezdése igen egyszerű, ha nem változtatunk az alapbeállításokon. Kattintsunk a "Sample Script" feliratra az ablak bal oldalán lévő farendszerben. Írjuk be jobb oldalon a "Server" mezőbe a webszerver gépnevét vagy e-mail címét. Végül kattintsunk a "Run Script" gombra. A teszt alapbeállításokkal 15 percet vesz igénybe. Ezalatt a következőkre érdemes figyelni a webszerveren:
  • Processzor használat. Ha 80 és 100 % között mozog, akkor túlterhelt a gép, az a normális, ha tartósan maximálisan 50-55%-ot ér el. A túlterheltség együtt jár a szolgáltatás lassulásával és elveszi az erőforrásokat más szolgáltatásoktól (pl. SQL szerver). Elsősorban az INETINFO.EXE fájl által generált processzor használat az érdekes, ugyanis ez a webszolgáltatás.
  • A memóriahasználat esetében az a legjobb, ha a felhasznált memória mennyisége nem haladja meg a gépben lévő fizikai memóriát (RAM). Ha meghaladja, a különbözet a merevlemezen lévő gyorsítótár használatával áll elő, ami több nagyságrenddel lassúbb adatmozgatást eredményez.
  • Ellenőrizzük az IIS naplóállományát (%systemroot%\system32\logfiles\W3svcX mappában). Ha "404_Az_objektum_nem_található" hibaüzenetet látjuk, akkor a tesztprogram nem tudja elérni a kiszolgálóra másolt fájlokat (lásd "Használat előtti előkészületek" fejezet). A teszt negyed órája alatt számolhatunk a naplófájl kb. 6,4 MB-tal történő növekedésével (ha a naplózási mennyiség is alapbeállításon van az IIS-ben).
  • Próbáljunk meg elindítani más szolgáltatásokat, programokat a webszerveren. Nem lehet annyira foglalt a gép, hogy egyáltalán ne tudjunk semmit csinálni.
Mi van, ha az tapasztaljuk, hogy a tesztprogram működése közben a webszerver szinte megbénul? Bővíteni kell a hardvert: gyorsabb processzor, több memória, gyorsabb merevlemez, attól függően, hogy hol tapasztaljuk a "palacknyakat" (bootleneck).
A teljesítmény meghatározása nem szubjektív dolog: futtathatjuk a kiszolgálón a Felügyeleti eszközök > Teljesítmény (Administrative Tools > Performance) segédprogramot, de a tesztprogramba is beépíthető az ellenőrzés. Utóbbi azért jobb, mert a teszt végén készül egy összegzés és egy helyen tekinthető meg az összes paraméter. Persze mehet mindkét gépen egyszerre is a mérés. Nézzük, hogy lehet a Web Application Stress Tool-ban beállítani a teljesítmény számszerűsítését:
Kattintsunk a "Perf Counters" tárolóra, majd a jobb oldalon az "Add Counter" gombra. A mérés a szabványos Windows számlálóobjektumokkal történik. Válasszuk ki a "Computer" mező melletti gomb segítségével a webkiszolgálót. Az "Object" legördülő menüben a "Webszolgáltatást" ("Web Service"). A "Counter" listában a "Bejelentkezési kísérletek/s" ("Connection Attempts/sec"), majd kattintsunk az "Add" gombra. Ismételjük meg és adjuk hozzá a "Vételi sebesség (bájt/s)" ("Bytes Received/sec") számlálót is. Tetszés szerint válogathatunk a számlálók között, annak megfelelően, hogy mit akarunk mérni. Használhatjuk még a "Webszolgáltatás" ("Web Service") objektumon kívül az "Active Server Pages" számlálóit is.
Teszteredmények megtekintése
Ha lefutott a teszt, kattintsunk a View > Reports menüre, ahol szintén egy farendszerben, dátum szerint megjelenik az eredmény, köztük többek között az előbb beállított számláló objektumok által szolgáltatott számszerűsített teljesítményadatok.
Új felhasználók hozzáadása
Alapértelmezésben 200 felhasználó egyidejű kapcsolódását szimulálja a tesztprogram, de nagy forgalmú webhelyeken ez nem elég. További felhasználók hozzáadásához kattintsuk a View > Users menüre. Írjuk be a "Number of New Users" mezőbe a hozzáadandók számát és kattintsunk a "Create" gombra. Az itt található többi beállítást nem szükséges módosítani.
Alacsony sávszélesség szimulálása
Tesztkörülmények között (pl. két, közvetlenül összekapcsolt gép esetében) nem biztos, hogy ugyanaz a sávszélesség, mint egyébként. A Microsoft Web Application Stress Tool programja erre az esetre is fel van készítve. Kattintsunk a "Settings" gombra (View > Scripts > Sample Script, ha elállítottuk a megjelenítést).
Majd a "Bandwith" szekcióban aktivizáljuk a "Throttle bandwidth" jelölőnégyzetet és a mellette lévő legördülő menüből válasszuk ki a sávszélesség maximális korlátját (pl. 14.4 Modem).
Összegezve
A fentieken kívül a programban még számos további beállítási lehetőség létezik. Összességében elmondható róluk, hogy csak különleges körülmények között van szükség a módosításukra, alapbeállításokkal is hatékony teljesítményelemzést végezhetünk.

Resource Kit alkalmazások cikksorozat