假设在多用户应用程序上,同一请求可能由多个用户同时发起,这些请求最终将是对某些服务器端操作的一些 ajax 调用,我们有一个由该操作/方法执行的例程在服务器上如下:
例行任务:它负责重新排序,假设项目没有相互连接,没有双链表数据结构,但所有项目默认都有一个假定的排序,并按该顺序表示给用户,当这些 ajax 调用启动添加项、删除项或更新项操作时,排序将不同,因为条目就像 FIFO。
目前我需要更新所有记录,orderNumber 列以跟踪所有更改,在更新操作中,因为项目在用户界面中是可移动的,并且用户具有拖放交互的功能,项目可以向上或向下原始有序列表并更改这些排序。
作为跟踪这些排序更改的最有效方法,您会建议什么方法,这种方法在服务器上的性能成本最低,并为用户保持可接受的用户交互?
开发平台为 ASP.NET MVC4,持久化使用 SQL Server
编辑:
在阅读第一个答案后,我不得不提到一个事实,即问题不是从服务器为所有用户发布的实时或多播消息,也不是由一个用户发起的更改发布以广播给所有其他用户. 项目是用户特定的,有些用户可能有数百个项目,有些可能只有少数或更少