首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
V2EX  ›  问与答

问一个 web 开发的问题,如何控制多人同时操作一个内容?

  •  
  •   zhaogaz · 58 天前 · 498 次点击
    这是一个创建于 58 天前的主题,其中的信息可能已经有所发展或是发生改变。

    希望大家看看正文,我觉得用权限模型不太适用,谢谢

    目前产品那边提出了一个需求,我个人是没有找到一个非常恰当的模型来解决这个问题,故来提问。

    业务描述

    假设有三个用户,分别是,张三,李四,王五。

    操作的页面流程是这个样子

    页面 1-页面 1.1-页面 1.1.1
        |    |
    页面 2   页面 1.2
        |
    页面 3-页面 3.1-页面 3.1.1
    

    要求:

    1. 张三操作 1.1 的时候,1.1.1 和 1 不可操作,锁定.(即锁定 1.1 所有相关的父和子)
    2. 张三操作 1.1 的第一条数据的时候,李四可以操作 1.1 的第二条数据,不可操作第一条

    我的尝试

    1. 我试着把以上内容抽象成类似于并发控制的模型,但是底层操作都是 ns,ms 级别,而在 web 流程中,整个操作是几十 s,或者是几分钟的级别,差太多了。感觉对照不了
    2. 权限的模型,我理解为验证与授权,但是常见的权限,都是固定各种类型权限的,或者是由管理员统一分配的,感觉权限没法做。
    3. 尝试中英文搜了下,总是搜的不对,找不到类似的东西

    所以问问各位大佬,有做过类似的东西么?什么样的模型合适?(实际比这个东西多,我这里只是说明下举个简单例子)

    4 回复  |  直到 2018-12-27 18:14:39 +08:00
        1
    zn   58 天前 via iPhone   ♥ 1
    并发控制时间越短越难做,你现在十几秒甚至几分钟的,简直再容易不过了,我没觉得有什么不对。
        2
    xiaoxinshiwo   58 天前   ♥ 1
    db 层乐观锁
        3
    ooeyunarika   58 天前   ♥ 1
    服务端记录操作和上锁,websocket 广播操作,多端同步状态,延迟取决于网络
        4
    alvinbone88   58 天前   ♥ 1
    关键词 BPMN
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   774 人在线   最高记录 4385   ·  
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 20ms · UTC 20:40 · PVG 04:40 · LAX 12:40 · JFK 15:40
    ♥ Do have faith in what you're doing.
    沪ICP备16043287号-1