用户提交价格重复问题
我当前遇到一个这样的问题,一个招标报价系统,用户提交价格的时候,人数较多的时候,出现高并发,会出现多人提交相同的价格问题,现在需要实现每个用户提交的价格必须唯一,不能多个用户提交相同的价格,请问哪位大神帮忙想个办法,这个问题类似于电商解决秒杀超卖问题.
高认可度评论:
你这问题太简单了,根本用不到数据库级别的锁,也不需要将所有的用户报价入库,这样都是在浪费IO,并且并发时用户提交失败的可能性非常大,压力全都给到了数据库。很明显不是最优解决方案。
以下是我的解决方案,你可以参考:
落库
测试脚本
100次并发请求,不会有任何重复数据,简单吧?
有用户请求的时候锁住
锁机制,队列应该都能解决这个问题
队列加锁还有mysql 行级锁
你这问题太简单了,根本用不到数据库级别的锁,也不需要将所有的用户报价入库,这样都是在浪费IO,并且并发时用户提交失败的可能性非常大,压力全都给到了数据库。很明显不是最优解决方案。
以下是我的解决方案,你可以参考:
落库
测试脚本
100次并发请求,不会有任何重复数据,简单吧?