>백엔드 개발 >PHP 튜토리얼 >闲逛网易1元夺宝产生的一点小疑惑

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

WBOY
WBOY원래의
2016-06-06 20:22:511111검색

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

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

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

回复内容:

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

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

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

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

https://segmentfault.com/q/1010000004102176/a-1020000004102233

数据库锁,文件锁

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

update tabl_x set xxx=139 where xxx=138;

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

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.