2014-01-17 13 views
1

我们有一个非常活跃的网页,它有很多ajax和通过jquery定期更新。它可以在峰值情况下为每个用户加载大量的数据(每分钟100000k),并且在最后一个高峰期间我们有2,000人在线。统计一个页面上的并发用户数

我们想要做的是统计并发用户的数量。如果超过500(而不是注册用户),那么运气不好,请上路!

有没有人有过课程或其他过程?我们的服务器每小时回收一次,所以我想到的应用程序级别变量在成功时会将当前计数加1(金牌用户可以免除测试但添加到配额中,因此我们可能有600个用户)。

有没有其他人玩过这个想法?

TIA

回答

1

只是一些想法...

application.lock() 
application('visitors') = application('visitors') + 1 
application.unlock() 

你应该进行压力测试这个解决方案,给你希望允许的数字。这可能会工作是我的猜测。

请考虑计算ajax url页面,以便更准确地估计负载。去会议的时候,你不会知道我什么时候离开了。通过Ajax线计数可以提供更准确的访问者数量。

+0

谢谢,我从来没有想过事情的阿贾克斯一面,我会集中我的尝试这种方式。 – Ewen

0

只是建议:在GLOBAL.ASA会话的OnStart,你可以增加一些全局(应用程序)变量运行的会话的数量。 不要忘记减少它在GLOBAL.ASA会话OnEnd

+1

session_onend在会话超时发生时触发(标准20分钟),因此您将拥有用户不在站点且会话实际结束的时间段 – ulluoink

+0

此计数器也适用于整个应用程序,而不是特定页面。除非您在页面加载和页面卸载时递增或递减计数器。即使如此,这也是很多锁定和解锁应用程序变量的原因,并且可能会导致应用程序在性能上受到影响。 –

+0

计数:application.lock – Paul

相关问题