我有一个可以(理论上)部署在多台服务器上的 asp.net 应用程序。
作为许可机制的一部分,我想限制全球开放会话的数量。
即所有服务器上打开的会话总数不能超过一定数量(数量取决于许可)。
我怎样才能做到这一点?我使用 3rd 方组件没有问题(免费或付费)
几个限制条件:
- 任何服务器都可以随时关闭。
- 我必须假设服务器位于封闭的 Intranet 网络上(即没有外部 Internet)
请检查此线程下的答案。它解释了限制每个用户一个会话,但您可以根据需要更改它
您可以使用Application
对象来记录打开会话的计数,并使用Application.Start
和session.start
事件global.asax
来管理此计数并管理打开的会话计数。