积分兑换并发问题以及处理方式

假设,一个人有100积分,可以兑换一张机票,在速度非常快的情况下,第一次兑换数据还没来的及更新数据库数据,第二次也在进行兑换操作呢,求具体解决方案。比如乐观锁,感觉单独使用数据库乐观锁不可以解决问题。谢谢

兑换成功,返回一个ok数据or失败,限制收到okor失败后才能第二次兑换

把高并发多线程问题简化成队列问题就可以了,队列是有顺序的,先进先出,后台按照队列顺序依次处理就好了。队列是MQ,message queue