Windows - Teljesítmény finomhangolás Exchange 2000 szerveren

forráskód letöltése
Az Exchange 2000 Server teljesítménye nem jelentősen ugyan, de elmarad az Exchange 5.5-től, ha vegyes környezetben használjuk. Mit jelent a vegyes környezet? Egy levelező rendszeren belül találhatók Exchange 2000, 5.5, MSMail vagy más kiszolgálók és ezek aktívan együttműködnek egymással. Mi a teljesítménycsökkenés oka? Miként orvosolható a probléma? Ezeknek járunk utána cikkünkben.
Cikkünkhöz mellékeltünk egy "MTA.reg" nevű állományt, mely az alábbiakban található másik két beállítással együtt növeli az Exchange 2000 Server kiszolgálói teljesítményét.
Az Exchange 2000 Server-t számos csatlakozóval (connector) látták el annak érdekében, hogy képes legyen együttműködni más levelező kiszolgálókkal. A más nem csak Microsoft terméket jelent. Amíg az Exchange szempontjából homogén a hálózat, tehát nem található más csak Exchange 2000 kiszolgáló, addig nincs szükség a kompatibilitást biztosító csatlakozók használatára. Rendszeradminisztrátorok az elsők között veszik észre egy Exchange 5.5-ről, 2000 való átállás során, hogy hiányzik a megszokott teljesítmény finomhangoló program a Performance Optimizer (Perfwiz.exe). Mi az oka, hogy kimaradt? Az, hogy az Exchange 2000 komponensek menet közben, dinamikusan hangolják saját magukat a maximális teljesítmény elérése érdekében. Mindez természetesen a háttérben történik és a rendszergazda nem kap tájékoztatást róla. A hangolás sajnos nem terjed ki minden komponensre, a kompatibilitás megőrzése érdekében a Microsoft Exchange Message Transfer Agent (MTA) szolgáltatásra például nem. És ez okozza a teljesítmény csökkenését. Felhívnánk a figyelmet, hogy ez csak nagy terhelés alatt álló kiszolgálókon vehető észre.
Két regisztrációs adatbázisbeli változtatás szükséges hozzá postafiók tárolónként (Mailbox Store), hogy megnöveljük az átjáró szálak (gateway threads) számát. Csupán ezzel már növelhetjük a teljesítményt. Indítsuk el a REGEDIT.EXE segédprogramot (Start > Futtatás > regedit) és keressük meg az alábbi kulcsot:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\MSExchangeIS
Ezen belül számos további kulcs létezik. Keressük meg azt, amelyik megegyezik a kiszolgáló nevével és lépjünk be. Két típusú alkulccsal találkozunk: egyiknek "Private"-el, másiknak "Public"-al kezdődik a nevük. Utána pedig egy számsort láthatunk, például:
"Private-677425de-4e67-48c3-b572-3730742c9f6c"
Annyi "Private" kezdetű kulcsot találunk, ahány postafiók tároló (Mailbox Store) van telepítve az adott Exchange kiszolgálóra. Az alábbiakat mindegyiken végre kell hajtani:
Lépjünk be az elsőbe és hozzunk létre egy új duplaszó (REG_DWORD) típusú bejegyzést. Neve legyen: Gateway in Threads. Értéknek adjunk 3-at.
Hozzunk létre még egy duplaszót, ezúttal Gateway Out Threads néven és ennek is adjunk 3-as értéket.
Ismételjük meg az összes "Private" kezdetű kulcson belül.
Következő beállításunkkal az RPC (Remote Procedure Call) hívások maximális számát növeljük az MTA-n belül. Tallózzunk el az alábbi registry kulcshoz:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSExchangeMTA\Parameters]
Keressük meg a "Max RPC Calls Outstanding" nevű bejegyzést és változtassuk meg az alapértelmezett decimális 50-es értéket, decimális 128-ra.
A változtatások érvényesítéséhez indítsuk újra a kiszolgálót.
Beállításaink után valamelyest több memóriára lesz szüksége a szervernek és igazából nagy forgalom mellett - amikor kihasználható a megnövelt szál és eljárás hívás szám - vehető észre, illetve mérhető a "Teljesítmény" ("Performance") nevű programmal.