当前位置:  开发笔记 > 后端 > 正文

并发ASP.NET会话最佳实践

如何解决《并发ASP.NET会话最佳实践》经验,为你挑选了1个好方法。

用户A登录故障单管理系统以编辑"SomePage.aspx"上的内容

用户B在30秒后登录以编辑"SomePage.aspx"上的相同票证

用于通知每个用户其他人正在修改相同内容的一些最着名的实践(在3层体系结构中)是什么?



1> Jon Skeet..:

在像HTTP这样的请求/响应系统中,没有太多关于用户当前正在做什么的概念.您可以通知他们其他人在最近两分钟内打开了机票进行编辑(或者甚至阻止他们在这种情况下打开它),但是用户A可以编辑半小时 - 除非您也禁止这样做.您可以记下这样一个事实,即您认为用户A已经有效地"获取"了该项目进行编辑,但是使用网络应用程序时,没有什么可以阻止用户离开计算机而从不保存/取消.

在考虑技术解决方案之前,我建议考虑技术限制(基本上是Web的异步和请求/响应性质)并计算出所需的行为.一些常见的行为是:

首先编辑获胜(告诉第二编辑他们的更改已被拒绝,基本上)

第二次编辑获胜(覆盖第一次编辑 - 告诉第一个编辑器为时已晚)

合并(可能非常困难和/或不可能,具体取决于内容).这可以是自动的或手动的(在第二个编辑器的部分).

在您认为第一个人可能正在编辑时阻止第二个人编辑(由于第一段中提到的问题,很少适合网络应用)

推荐阅读
手机用户2502852037
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有