我想设置限制来控制同时登录的用户数量。
场景:-
我有一个MVC网络应用程序,Customer A会用XYZ量购买我的应用程序。我将允许3个用户同时可以登录到该应用程序。现在Customer A又来找我,说我想把用户限制增加到10,我会说好,付这么多钱,我会这么做的。
现在,我想设置用户登录用户(同时)限制为10。
我的问题是如何在MVC中实现这个概念。
-我试过的:-
我使用了Application变量来实现这一点,但是有一些场景,比如用户登录,但没有注销,他/她当时关闭了浏览器,我如何才能命令当前登录用户计数。
发布于 2017-03-07 09:38:28
无法强制注销,也无法判断浏览器何时关闭。
我有两个建议给你
客户端到服务器:,如果您期望并发用户数量相对较低,我将拥有一个全局Jquery函数,它将轮询服务器x秒。
用户登录时,您存储他们的“令牌”、"IP“和”最后的操作时间“,并给他们”令牌“(令牌应该是唯一的)。每隔x秒,就有一个jquery函数用令牌调用服务器并更新“最后的操作时间”。
在登录时,测试用户是否有10个当前活动的登录。如果是,拒绝。(最后一次操作以x秒为单位)
服务器到客户端使用signalr或其他技术对已登录的用户进行投票,以查看他们是否仍在登录。
https://stackoverflow.com/questions/42643793
复制相似问题