图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是如何实现这么大的并发量以及如何防止用户刷奖品的呢?或者是有外网抽奖活动这方面经验的也可以分享一下!

解决方案 »

  1.   

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

  2.   

    也许是组合拳:
    1、记录IP地址,1小时内重复IP的请求直接过滤掉:返回成功但其实根本没进行抽奖;
    2、为每次砸的机会生成随机数,RandomNum,如果RandomNum在服务器内存中检索不到的则直接过滤掉;
    3、为每次访问该页面生成时间戳(并非常规格式时间,而是一个代号),时间戳范围内只有一次有效,无时间戳直接过滤掉;
    4、上述三个值生成Hash并做简单加密,如果上述三个值跟Hash不一致,直接过滤掉;
    其实,对于这种全民参与的,原则很简单:宁可错杀不可放过。
    反正最终用户绝对不知道究竟是不是被错杀了。
    所以我个人倾向于简单粗暴的招数,不需要真的那么复杂。
      

  3.   

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

  4.   

    那天那个砸的活动 我抓了几次包 就果断不玩了 木意思 不论你点还是不点  等出奖的时候就把你给denny了 你还抽个屁。我在群里一说抓包方法 都不去砸了 都被denny了