Session.Abandon won't come into picture as the scene here is of closing the browser window,so Session_End won't fire at all..Please re-correct yourself.
Reason for my vote of 2
Focuses on an important issue, but only scratches the surface and the simplistic way it is presented may be somewhat misleading. Namely that there's some sort of "easy" solution to this (like Alternate 1, which is senseless btw)
Cool, article. We were doing something similar to manage concurrent users but hit a wall with when users refreshed the page.
It was noticed during development test that the session count was not working right especially when users refreshed pages though App hit count was being read OK and different session ID's were being generated as expected. Plus it came to light as well that IE handles sessions slight different from Chrome and FF. - Just an observation not found a work around yet....