【发布时间】:2010-09-19 07:57:12
【问题描述】:
我有一个类似于票务工作系统的 Web 应用程序在工作。一些用户输入新问题。其他工人选择并解决问题。所有数据都保存在 MS SQL server 2005 中。
致力于解决问题的用户会转到他们可以查看未解决问题的页面。因为最多可以有 20 人同时查看此页面,所以我必须解决的一个潜在问题是,如果有人在页面加载后选择了其他人选择的问题,会发生什么情况。
为了解决这个问题,我做了两件事。首先,显示要选择的问题的网格视图使用 AJAX 计时器每秒更新一次。一旦选择了一个问题,它最多会在一秒钟后消失。如果他们在这一秒内选择了一个,他们会收到一条消息,要求他们选择另一个。
问题在于其中的 AJAX 部分发送了太多更新(这是我的假设),并且影响了页面和数据库的性能。此外,更新并不是每秒都在执行。在触发存储过程时,我发现计时器不可靠。
必须有更好的方法,但我似乎找不到。有没有人遇到过这样的情况,或者有建议让多个用户不要选择相同的记录来维护?我真的不想完全禁用 AJAX 部分,因为我觉得单独的消息会使应用程序使用起来令人沮丧。
谢谢,
【问题讨论】:
标签: asp.net sql-server vb.net ajax concurrency