例如活动限制10人
已经有9人参加
下次有两个人或多人同时提交
如何处理 一个人成功 其他人失败

解决方案 »

  1.   

    如果不是抢购那种类型的,可以锁表实现,如果高要求可以使用redis队列
      

  2.   

    可以使用数据库的原子性来做
    例如表有两个字段,一个是quota,一个是used
    quota保存总可用数 10
    used保存已使用数然后先执行update
    update table set used=used+1 where quota>used;如果执行成功,才可以做下一步处理,这样就可以避免并发的问题了。