我们有一个类似于 gmail 标签的应用程序功能 - 您可以“标记”这些项目。现在这是一个并发应用程序,即这个所谓的“白板”可由多个用户编辑 - 这意味着许多用户可以选择重新/分组项目。基本上同时标记多个项目。
肯定会有冲突,但问题是如何最好地处理它?唯一想到的策略类似于著名的 ALOHA 协议,即,在提交之前检查是否有任何更改 - 如果是,则中止并通知用户;否则提交。这是非常低效的IMO。
这里有两个相似的想法——一个比较难,另一个比较容易:
第一个更容易:) - 覆盖更改,即重复的只会被更新,但新的也会被标记。
困难的一个:检查要“删除”的内容,即,可能有一些不属于该类别(用户 2 说。即,用户 1 进行了更改,用户 2 也同时进行了更改。基本上找到一组标记项目 {user1 - user2})。这将非常困难,恕我直言,真的不值得付出努力。
我想知道在这种情况下使用的最佳实践解决方案是什么,既不会妨碍用户体验,也不会混淆他们。
(这是一个带有 MySQL 后端和 Jquery/ajax 前端的 J2EE/Restlet 应用程序)