E feladat megoldására több módszer is létezik, de mivel ha nem muszáj, ne dolgozzunk sokat alapon, most válasszuk a legegyszerűbbet. Ez pedig a következő lesz: a rendszerben adott többféle számláló és teljesítmény mérő eszköz. Ilyen például a processzor aktuális terheltsége, a merev lemez írási sebessége, stb. Találhatunk többféle számlálót az ASP.NET-es alkalmazások területén is. Például több számláló is van, mely ASP.NET-es programok Session-jével függnek össze. Azt tudjuk, hogy egy alkalmazásban a Session objektum egy felhasználóhoz, pontosabban egy felhasználó egy böngészőjéhez köthető. Ha tehát tudnánk azt a számot, hogy hány aktív Session objektumot tárol a rendszerünk, akkor máris rendelkezésre állna a kérdéses szám.
Természetesen van ilyen számláló is, így nincs más dolgunk, mint programból lekérdezni ennek eredményét. Ehhez tegyünk a Web Form-ra egy PerformanceCounter komponenst, majd a CategoryName property-nél válasszuk ki az ASP.NET Applications csoportot. Ezek után a CounterName property-nél a Sessions Active elemet jelöljük ki. Végül az InstanceName property-ben a __Total__ az amit ki kell választanunk. Ettől kezdve a PerformanceCounter komponens szolgáltatja számunkra azt, hogy hány aktív Session van, vagyis hányan látogatják aktuálisan a web oldalainkat.
Lekérdezéshez csak a komponens RawValue property-jét kell kiolvasnunk.
private void Page_Load(object sender, System.EventArgs e)
{
Label1.Text = performanceCounter1.RawValue.ToString();
}
Ha szerverünkön több alkalmazás is futna, akkor lehetőségünk van arra is, hogy az aktív Session objektumok számát alkalmazásonként csoportosítsuk. Így ha van egy Filter11 nevű alkalmazásunk, akkor a PerformanceCounter komponens InstanceName property-jében az _LM_w3svc_1_root_Filter11 érték választásakor csak a Filter11 alkalmazáshoz tartozó aktív Session objektumok számát fogjuk megkapni.
Ha csak egy ASP.NET-es alkalmazásunk van, akkor jól használható a __Total__ érték, mely több alkalmazás esetén az összes program aktív Session objektumának számát adja.
Az így kapott szám nem keverendő a Session osztály Count property-jével, mely azt a számot adja, hogy a Session objektumon belül hány adat került tárolásra.
Még egy fontos tudnivaló van, ha ezt a módszert szeretnénk éles helyzetben alkalmazni: az így megszerzett szám csak azon aktív Session objektumok számát adja, melyek memóriabeli Session objektumok. A Session adatai tárolhatók akár MS SQL adatbázisban, vagy egy külső, Windows szerviz alkalmazás által is. Ha ez a tárolási mód lenne, akkor az ott tárolt aktív Session objektumok számát nem tudjuk ily módon megszerezni.