Heim > Artikel > Backend-Entwicklung > 关于秒杀程序设计
目前的想法是这样:
当用户参与秒杀后 把所有用户插入数据库,然后按时间轮询 直到计时器为零的时候 轮询到哪一个,这个就是中秒杀者,
轮询时间是一秒 ,问题是 如果 到最后一秒时候 又有用户按秒杀,这时候 到让计数器加时,然后继续轮询 ,
不知道何不合理!!!
请各位 各抒起见! 谢谢
不是吧,要到时间的时候,LOCK住不就行了,还让询什么呀!
是啊 时间到后就锁表 禁止插入了。
然后 栈 的思想,最后一个插入的为 中标者。
如果最后一刻中标者有多人,则轮询
(其实 个人认为,轮询都不要,直接order by desc交给mysql处理查询)
哇 有道理 但是我觉得不够合理啊
要讲究 公平 公正
听你的秒杀,貌似只秒出去一个?
如果这样的话,我决得有个开始时间倒计时,当时间到的时候允许购买,当购买入库的时候查询是否己经有人买过,一但有第一位下单者,则停止购买。
这样不行吗?
哇 有道理 但是我觉得不够合理啊
要讲究 公平 公正
最后一刻买入无并发,只有一人中标,最公平。
有并发 多人中标,就没法说公平了,你说给谁中标好? 还不是rand 随机其中的一个,对于其他人来说都不公平。这还多了个rand过程,还不如直接order by,让mysql来决定。
我知道
其实秒杀的原理都一样的
就是最后一位中标!
还有 把插入时间设置成微秒(1秒=100万微秒),我就不信还能有并发。
如果真的还有并发,你的站已经很NB了,已经不可能到这里来问了,身边已经有一大批工程师了。
还有 把插入时间设置成微秒(1秒=100万微秒),我就不信还能有并发。
如果真的还有并发,你的站已经很NB了,已经不可能到这里来问了,身边已经有一大批工程师了。
哈哈哈...
呵呵 我已经解决了 在过程中遇到各种问题 就是不同浏览器 ajax 请求的时候 时间是不一样的
。。。
想想如果把时间直接显示在客户端的话 就不妥了
最后就是用锁定表的方法来搞。。。
勉强的可以用了, 谢谢各位!!
想请教大家个问题,我不是学计算机的,所以很多东西不懂,如果我想弄个像秒杀器一样的程序,就是到指定的一个时间自动刷新点击,怎么弄呢!
呵呵 我已经解决了 在过程中遇到各种问题 就是不同浏览器 ajax 请求的时候 时间是不一样的
。。。
想想如果把时间直接显示在客户端的话 就不妥了
最后就是用锁定表的方法来搞。。。
勉强的可以用了, 谢谢各位!!
楼主,请问你能给我开发一套这样的程序吗?我想购买,我的QQ 63566536 电话 13283250777