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

问一个并发上座的问题?

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

    问题描述

    我是用 hash 表来表示座位上的人的( key 表示座位位置,value 就是具体的 uid ),然后用 hsetnx 处理并发上座, 但是有个问题是,在上座成功后,我要把这条信息投递到消息队列里去(为了通知客户端),但是这里可能有网络原因(或者其他原因), 导致投递失败,但是 redis 又没有事务,没办法回滚,这样就会出问题,不知道大家有什么好思路,冒昧请教下。 伪代码类似于:

    res =  cache.setnx(pos, uid)
    if (!res) {
        throw new Exception('上座失败!')
    }
    mq.send({
        pos: pos,
        uid: uid,
        time: new Date()
    })
    
    目前尚无回复
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   4015 人在线   最高记录 4385   ·  
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 17ms · UTC 06:24 · PVG 14:24 · LAX 23:24 · JFK 02:24
    ♥ Do have faith in what you're doing.
    沪ICP备16043287号-1