如何在任何特定时刻找到我的站点(IIS7/asp.net)上的访问者/用户数?

oek*_*rem 5 asp.net iis-7 episerver

我需要显示有多少用户在浏览我的网站.该网站正在iis7上运行,我们正在使用asp.net 3.5.

活跃会话的数量是一个好方法吗?这个数字不需要非常准确.

不需要历史记录,我只是想知道现在有多少用户"在线",并在页面本身上显示.

Dav*_*ale 4

您可以为此使用 Windows 性能计数器 (perfmon)

ASP.NET 应用程序 > 会话活动计数器。

您可以使用 System.Diagnostics 命名空间访问这些性能计数器。

这段代码对我有用:

        PerformanceCounter pc = new PerformanceCounter("ASP.NET Applications",
     "Sessions Active", "__Total__", "MYSERVERHOSTNAME.domain");

        while (true)
        {
            Console.WriteLine(pc.NextValue());
            System.Threading.Thread.Sleep(1000);
        }
Run Code Online (Sandbox Code Playgroud)

我遇到了这个问题,所以如果计数器看起来太高,请看这里:http://support.microsoft.com/kb/969722