日期:2014-05-19  浏览次数:20608 次

关于天猫tmall砸金砖活动的技术讨论
图1:


图2:


图3:


图一为tmall首页的活动界面。
图二为点击”砸“按钮访问的地址,例如:http://promotion.taobao.com/tmall/furinkazan.do?we=1&time=1340024518&checkCode=2ca01e7d02d42ce1c41f78d71d86e400&ua=007W5gLJjOhwGAyGs3GY7nAcF0%3D%7CWxkLayIypeRlM9sPImHEZCwR1S3mI73ucxFXqw%3D%3D%7CW5kLaxORxFgwFkxGM7mwaDWZToUTkdRkLJsMhsKJyGoyFo2Gc%2Bp1%7CWxwLRCLq%7CW5wLRCLq%7CW5iMhSKJzGgwGIyGc7HYbjAcjgbiqdhgMBoMBhOR1GYzGE0HcxF1%7CW5gMhSLazGIzHIyFxRHEZjOcDkZTqdBuMRoMjwNxwGw2G8ymY4nAYDEaTQYDkdS4IhZMqyLq%7CW5gMhSLazGIzHIyFxRHEZjOcDkZTqdBuMRoMjwNxwGw2G8ymY4nAYDEaTQYDkdS4IhZMqyLq&RandomNum=1340024766875&stra=3&callback=VolBrickCb

图三为按钮的ID

现我在浏览器的地址栏做了一个点击按钮的脚本(每间隔1毫秒点击一下按钮):
javascript:setInterval(function(){document.getElementById("J_Vol_Brick_Btn").click()},1);void(0);

可是挂了一天还是不会中奖,间隔时间我也设置了各种情况了。
所以我想请问一下tmall是如何实现这么大的并发量以及如何防止用户刷奖品的呢?或者是有外网抽奖活动这方面经验的也可以分享一下!





------解决方案--------------------
探讨

第一天活动用手点反而中了10个五块钱的红包。
买了一个靠枕和一个iphone的磨沙贴膜.开心啊。。。
于是我想中4999,看来这只是梦。

------解决方案--------------------
都是在服务端控制的

连我都能想到会有人作弊用脚本刷,天猫的技术人员会想不到么?

如果是我,我会想尽一切办法让投机取巧的人永远中不了!
------解决方案--------------------
也许是组合拳:
1、记录IP地址,1小时内重复IP的请求直接过滤掉:返回成功但其实根本没进行抽奖;
2、为每次砸的机会生成随机数,RandomNum,如果RandomNum在服务器内存中检索不到的则直接过滤掉;
3、为每次访问该页面生成时间戳(并非常规格式时间,而是一个代号),时间戳范围内只有一次有效,无时间戳直接过滤掉;
4、上述三个值生成Hash并做简单加密,如果上述三个值跟Hash不一致,直接过滤掉;


其实,对于这种全民参与的,原则很简单:宁可错杀不可放过。
反正最终用户绝对不知道究竟是不是被错杀了。
所以我个人倾向于简单粗暴的招数,不需要真的那么复杂。
------解决方案--------------------
我死命点,死命砸。什么都没。。。哎。。
------解决方案--------------------
我昨天发现砸中砖的好像有重复,但是没有抓 图也只能作罢!
------解决方案--------------------
昨天参加了,发现中不了,后来索性就不理了
------解决方案--------------------
去年双11,淘宝网有那么多访问量。以往都down好次了。并发量大确实是网站要解决的主要问题之一。除了硬件比较强大外,当然程序上要做很多准备,毕竟硬件不能解决一切问题,而且成本太高。
淘宝说以后会开放他们的源码,以后可以看看他们是怎么处理高并发高访问的;有时最简单的方式效果也最好。
关于中奖这一说,也就不要信了,用软件的形式抽奖,后台能做太多事情控制了。
------解决方案--------------------
探讨
我昨天发现砸中砖的好像有重复,但是没有抓 图也只能作罢!

------解决方案--------------------
探讨
去年双11,淘宝网有那么多访问量。以往都down好次了。并发量大确实是网站要解决的主要问题之一。除了硬件比较强大外,当然程序上要做很多准备,毕竟硬件不能解决一切问题,而且成本太高。
淘宝说以后会开放他们的源码,以后可以看看他们是怎么处理高并发高访问的;有时最简单的方式效果也最好。
关于中奖这一说,也就不要信了,用软件的形式抽奖,后台能做太多事情控制了。

------解决方案--------------------
太愤青了,都知道,程序做的抽奖,哪有公平的。难道只允许商家忽悠一帮用户没完没了的刷你的人气,还不准人有点贪念?
探讨
都是在服务端控制的

连我都能想到会有人作弊用脚本刷,天猫的技术人员会想不到么?

如果是我,我会想尽一切办法让投机取巧的人永远中不了!

------解决方案--------------------
投机也不是太容易滴,尤其是在这个大家都在投机的时代。。。
------解决方案--------------------
没绑定手机号,无缘大奖
------解决方案--------------------
我有同学砸出了4999.。。。
------解决方案--------------------
探讨

我有同学砸出了4999.。。。

------解决方案--------------------
前两天还能中几个红包,砸金砖毛都没砸出来一个。。。
------解决方案--------------------