闲逛网易1元夺宝产生的一点小疑惑

图片描述

如图所示,现在的商品剩余138次,他是怎么处理并发操作的呢,比如100个人同时把剩余的次数包尾了,那岂不是数量溢出了?一般是怎么建立数据表呢,又是怎么控制并发操作的呢,如果商品所需次数满了,又如何自动开始新的一期呢?

一直没有好的思路,望大师指点迷津。

阅读 3.8k
4 个回答

我跟你说 这东西从业务上根本没必要做严格锁 比如5000人夺宝 来6000人送钱又怎么样
究竟参加了多少 你知道么?我不知道,你也不知道,只有网易知道
前台多少只是一个数而已

数据库锁,文件锁

主要是利用mysql的update执行时的自动加锁功能。
页面上是138次,则多个用户并发请求时,sql如下例:

update tabl_x set xxx=139 where xxx=138;

这条语句只会成功一次,其他请求执行时'xxx'已经不是138了,所以都会失败。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题