Как я могу найти число посетителей/пользователей на моем сайте (IIS7/asp.net) в какой-либо данный момент?

Я должен отобразиться, сколько пользователей просматривает мой сайт. Сайт работает на iis7, и мы используем asp.net 3.5.

Является количество активных сессий хорошим способом пойти? Число не должно быть очень точным.

Никакая история не необходима, я просто хочу знать, сколько пользователей онлайн прямо сейчас, и дисплей это на самой странице.

5
задан oekstrem 27 April 2010 в 10:08
поделиться

3 ответа

Для этого можно использовать счетчики производительности 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);
        }

У меня была эта проблема, поэтому если счетчик кажется слишком высоким, посмотрите сюда: http://support.microsoft.com/kb/969722

4
ответ дан 14 December 2019 в 13:30
поделиться

Как правило, вы должны определить, что вы имеете в виду под количеством пользователей в сети.

Например, сеансы обычно длятся заранее определенной продолжительности, например 30 минут. В зависимости от того, как долго вы ожидаете, что пользователи будут на вашем сайте, продолжительность сеанса может быть в значительной степени связана с временем простоя, когда пользователя нет на вашем сайте.

Как правило, вам нужны люди, которые были в сети за последние n минут. Сеансы дают вам эту статистику за один период времени (настроенное истечение срока действия сеанса), но есть много других временных показателей, которые потенциально могут быть более актуальными.

1
ответ дан 14 December 2019 в 13:30
поделиться

Один из способов добиться этого - просто заставить журналы IIS помещать свои данные в таблицу в вашей базе данных, а не в локальной файловой системе. Это довольно легко настроить на уровне веб-сервера.

Затем вы можете легко построить график и показать использование в течение дня, текущего, еженедельного и т. Д.

Конечно, если у вас есть сайт с высокой посещаемостью, это приведет к огромному количеству собранных данных.

1
ответ дан 14 December 2019 в 13:30
поделиться
Другие вопросы по тегам:

Похожие вопросы: