473,473 Members | 1,468 Online
Bytes | Software Development & Data Engineering Community
Create Post

Home Posts Topics Members FAQ

UserConcurrency

How can I count the number of online users on my site? I
have implemented my application as follows. Whenever a
user logs in, I increment the count field in my database
by 1 in Session_Begin and on Session_End I decrement it by
1.Though the code works fine in normal circumstances, I
noticed a few anamolies:
1. If the user refreshes his browser, the Session_Begin is
called again and the counter is incremented again. To
overcome this, I used cookies. The first time the user
logs in, I create the cookie. When the user refreshes his
browser, it checks if the cookie exists, if it doesnt it
treats it as a new request and updates the counter
accordingly.
2. The problem arises on log out. Whenever the user
refreshes his browser, Session_End is called that many
times, and my counter is decremented more than once. How
can I get Session_End to run only once for each instance
of the browser?
3. I'm using Forms Authentication and on Session_End I
want to call FormsAuthentication.SignOut since the user
can still access the pages after the session ends,causing
a new session to be started. But this function does not
work in Session_End.

Nov 18 '05 #1
0 707

This thread has been closed and replies have been disabled. Please start a new discussion.

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.