我有一个网页,显示来自服务器的大量数据。通信通过ajax完成。
每次用户交互并更改此数据(说用户A重命名)时,它都会告诉服务器执行操作,然后服务器返回新的更改数据。
如果用户B同时访问该页面并创建一个新的数据对象,它将再次通过ajax通知服务器,服务器将为用户返回新对象。
在A的页面上,我们具有带有重命名对象的数据。在B的页面上,我们有一个带有新对象的数据。在服务器上,数据既有重命名的对象又有新的对象。
当多个用户同时使用该页面时,我有哪些选项可以使该页面与服务器保持同步?
宁可避免每次更改时锁定整个页面或将整个状态转储给用户的选项。
如果有帮助,则在此特定示例中,网页将调用静态Web方法,该方法在数据库上运行存储过程。存储过程将返回它已更改的所有数据,并且不再返回。然后,静态Web方法将存储过程的返回转发给客户端。
赏金编辑:
您如何设计使用Ajax与服务器通信但避免并发问题的多用户Web应用程序?
即并发访问功能和数据库中的数据,而没有任何数据或状态损坏的风险