本鱼拟成立工作室承接项目开发/软件定制/云设施开发运维/办公设备技术支持等,如您有相关需求,欢迎来询 | ::博客文章推荐::

2014 春运祭 ② 12306在2014年春运的风风雨雨

: 网络/NET 木魚 24808℃ 43评论
 按:本章节对数字公司吐槽非常密集而频繁,数字爱好者无爱请死开,当然如果你想知道真相那就欢迎你阅读,但请注意控制自己的情绪不要对我丢鸡蛋,否则我绝对会对你吐口水。PS本章几乎都是记实,但时间和顺序难免有差错,大致不会出问题。如果你不喜欢流水账的话,请跳过本章。

 

我总是喜欢预言事情的发展,如果说我在这件有趣的事情上失足最多的,那就是2014年春运的12306,和抢票软件们。

事情显然变得很有趣。

 

早在1311月底的时候,两则新闻突然搅动了尚处在喧闹前夕的原本一片寂静的12306。来也匆匆去也匆匆的新版和手机客户端,仿佛昭示着就要来一场很大的变动。

手机客户端原本是早在12年中就预言要出现的东东,可惜12306的拖延症爆发,直到13年年底都还没有影子,所以也成为众多媒体和想趁机造势的厂商的首选目标,每次要诘难12306的时候总不忘把这个传闻中早已出现却始终没有现身的东东揪出来当武器,狠狠地捅12306一刀。而12306旧版网站的功能缺失、虽然基本够用却显得不够方便也早已成为众人吐沫星子无处可去时的首选目标。

新版12306和手机版出现的时间不多,短短八小时不到就被下线。但这已经暗示着什么。

 

大概是由于在13年春运和13年国庆的时候,数字公司跟12306对着干尝到了甜头,承接我之前所言,当它发现有什么好玩的时候,它会丢掉所有的节操忘记所有的下限开始穷尽全身之力,不择手段只为噱头和市场。于是,在1312月刚开始的时候,数字就开始大张旗鼓地要打造一个春运回家的平台。

其实这不算什么坏事,从出发点上来说。所有的负面评价不过是针对它的手段。初期的回家平台不过是一个预约提醒的平台,看起来就像是说,你提前预约了,买票前一天我短信通知你,如此而已。但是另一方面据小道消息,数字公司内部的很大一帮人为了春运可以说是卯足了全身的力气奋战了好几个月,所以我认为并不是这么简单,但是……很明显,这个时候还看不出什么东西。

 

12月上旬快结束的时候,新版的12306终于上线了。在一年之后,12306终于改头换面了,带来了自带的刷票、自带的预定功能。这些功能从设计和界面上来看,基本上是订票助手的翻版,核心功能几乎完全一致。当然,此时又有不明真相的群众蹦出来说哇擦12306抄袭属子公司的抢票王啊。每当听到这些群众的『真知灼见』时,我总是由衷地想『呵呵』,抄袭数字公司的抢票王吗,那数字公司的抢票王又是怎么来的、抄袭谁的?

不过这些不明真相的群众乱说话也就算了,我并不是很介意。真正让我恶心的是数字公司不急不忙地发的不少公关文稿,说什么很高兴感到12306已经吸纳了某安全浏览器的什么什么首创功能云云,哎,看一次恶心一次,人不要脸天下无敌啊。

和对数字公司的这种公关文稿的恶心相比,我对新版的12306倒是很宽容,虽然他们坚持说所有的功能都是自己设计原创的,我也没意见,毕竟这些方便的功能会被官方采纳,从一定意义上来说也是对订票助手的肯定吧。不过很多人都这么跟我说的,『哎呀木鱼头你要歇菜了!!』,也有人说,『哎呀死鱼你是12306的免费的产品经理啊』。我一听还真洋洋得意起来,可是很快又觉得不对劲。

 

很多人说12306换开发了,但是根据我对新版12306的源码分析,从代码风格来看,和旧版的12306其实是同一个开发团队开发的(猜测)。另一方面,追溯代码的历史可以看出,其实12306的新版在很久之前就已经开始酝酿了,最早的可以跟踪到的记录显示是134月。我突然惊呆了,因为10月的时候他们还在喊打喊杀的要封杀谁谁谁来势汹汹手段狠毒,而那时他们早就在自己COPY这些功能了。于新版12306来说,这是我唯一郁闷的事情,甚至我在想,他们这样做是自己在打自己的耳光,不知道有没有发现。

当然,对于很多人说的『木鱼头丫歇菜了』,我倒不是很担心,因为新版的12306虽然复制了核心的功能,但就功能实现来说还是有很多残缺的,也有很多地方存在问题。所以想做的话,还是有很多地方都是可以入手的。真正让我担心的另有其事。

那我到底担心啥呢。

 

一个是新版12306的负载能力。之前助手的用户,保守估计用户量最高的时候日活跃也就是百万级别,而12306高峰每日PV几十亿,很明显不是一个级别。而现在突然自带刷票了所有用户可用、假定只有一半的用户会用吧,也是完全不同的量级,对于12306能不能吃得消,我很怀疑。再者就是从前端实现的代码来看,自动刷票等相关的实现逻辑漏洞很多,系统忙时可能会有各种难以预料的情况出现,后端的情况就更难以预料了。

很不幸的,这两条预言在之后都被应验了。

当然也有我预言失败的,比如我认为不会有公司去破解12306的验证码,因为这是破坏12306正常运营秩序、干扰普通人买票的行为、作为一个商业公司是不应该也不能这样做的;我也坚持认为在春运结束前12306不会下线老版的网站,因为老版的网站经过两年的历练之后虽然不好用但功能足够稳健,必要时可以起到备份的作用。

 

整个12月中旬,老版的12306还在,古老的抢票王什么的还是滋润地活着。这时候高峰期遥遥相望,显然各个公司都有更容易的吐槽目标,那就是新版的12306网站和手机版的12306 App

整个中旬大概分成这么两个阶段。上半场众家体验12306,包括记者学者教授神马的,纷纷发表或褒或贬或隔山观虎的观点。下半场众多仰仗着12306吸引注意力的公关渠道开始此起彼伏,纷纷拿新版12306开刀,尤其以手机App中刀最多。中刀的原因很简单,又卡又慢,还不专业,看起来就很山炮。而新版12306收到的表扬稍微多一点点,大概是因为存在两年之久的老版12306直接拉低了众人的期望值,而怀孕两年之久的手机版众人又错误地带了太多期待……

撇开那些带着不纯洁目的发的公关稿而言,我认为在13年的12306已经进步很多了,应该给予鼓励,而遇到的问题虽然不少,但也不是一朝一夕一篇稿子就能搞定的问题,应该给点时间。而很明显的,公司化的12306战斗力翻倍了,嗯……原来只有2.5,现在有5了。

新版的12306功能和界面改进很多,虽然问题更多(比如刷票的定时器问题,记不住设置,各种请求发送的逻辑,代码质量等等……),但是单就代码来看,质量上升了很多,已经脱离了原来所说的水平;而手机App虽然又卡又慢还容易当掉,基本功能却很完善,也就够了(PS我的手机上这个App从来不能正常运行……但不妨碍我的观点),路总要一步步走的。

 

时间咵嚓就进入了12月下旬,春运首日将从26号开始,也就是即将开始,所有准备在这个市场中分一杯羹的厂商们都开始摩拳擦掌跃跃欲试,而数字公司依然在上蹿下跳着。到这个时间,显然对手机版的吐槽已经不是他们愿意做的事情了,要在买票中大展拳脚才是自己想做的事情。

我的订票助手也完成了新版本的对接,虽然老版12306上运行更好,但是在12306新版上一样的用,扩展了功能,添加了12306所不具备的功能,从底层还修复了不少潜在的错误,捎带给12306加了不少缓存(比如联系人),减轻他们的服务器负载。值得一提的是,在14年春运所有的以抢票之名大行其道的软件中,我的软件是绝无仅有的目标是完善12306本身功能、为12306减轻负载考虑而设计的。所以时间终会证明一切,商人就是商人,他们所做的标榜是为用户,其实只是为了抢夺市场,在这个前提下,究竟自己什么该做什么不该做,他们是根本不会顾及的。

很快的,数字公司就使出了杀手锏:验证码识别。我直接给惊呆了(第一次意外),因为我以为这是任何一个正常的公司都不会染指的功能。你也许会反驳我说人生日历一直这么干的,所以我从来没认为人生日历是一个正常的公司。既然人生日历都这么干了,为什么数字这么做我就要有这么大的反应?那是因为我知道数字公司不择手段毫无底线,他既然玩了,就不会这么简单,后面必然会有更狠更明目张胆更令人发指的功能。而且由于数字公司特殊的市场地位和身份,他的破防必将导致大批的厂商跟随。而这种情况的泛滥必将导致12306的反制,事情恶化后倒霉的只会是所有要买票的人。后来的事实证明,一切又在我的意料之中。

撇开验证码识别应该不应该本身来看,之所以新版的12306被数字公司搞出了一个验证码识别而老版本没有,主要还是因为新版本的关系。老版本的12306中,验证码没有独立的判断请求,判断对错是和提交订单一起的,所以要是正确的话就会直接提交订单了,因此必须在用户确认订单信息完整之后才可以进行;而老版本系统中,进入订单页面后需要隔至少4.5秒才可以提交订单,因此自动识别验证码占不到很大的优势(PS,这个4.5秒有办法可以破解,乌云上曾经有过漏洞报告,但还是那句话,利用这样的漏洞不是一个正常的企业应该做的事情)。而新版的12306顺应了一个潮流,就是输入验证码的时候有个独立的验证请求,这个请求返回的正确与否不会影响最终的提交(这是为了用户体验的设计,很多论坛和网站都这么设计的,比如支付宝)。于是,数字钻了这样一个空子,在验证码识别率在55%左右的时候,通过这个接口直接判断验证码是不是正确,不正确则直接自动换个验证码再来一次。因此,在破解验证码的同时,也会从一定程度上加重服务器的负担。

 

好吧,多么惊悚而刺激的市场。就这样,终于迎来了春运售票首日。而随着新版12306的上线,搜狗等浏览器的抢票插件在新版12306面前毫无用处(没有充足的时间分析),于是纷纷打起了验证码的主意。

当然,之所以都会开始玩验证码,原因很多。一个是有数字公司掉节操破功先玩,再者老版12306的下线也让众多公司觉得必须找到一个狠招并且不那么依赖12306的接口和协议,再者就是,再傻的人听到这个功能的时候也会觉得碉堡了——用户只想买到票,不辨是非不分青红皂白地追捧一个功能是他们的拿手好戏。在这个局里,如果数字公司等公司是毫无节操没有底线不择手段的凶手,那么需要买票的用户则是当之无愧的帮凶和幕后推动者。

 

于是搜狗开始宣传无码抢票,UC也开始玩无码抢票,人生日历则一直无码地裸奔着,连百度卫士一个搞系统安全的都来玩无码了,搞到后来——连网易都开始玩了,就更不用说手机端一直活跃的智行什么的。而一向不甘寂寞的腾讯,也在手机浏览器中悄悄地放了一个抢票的网页应用。在这场没有硝烟的战场上,唯独傲游始终很安静,很有大家之范。

当然,事情继续恶化着。承接我之前所言,数字公司开始玩什么的时候,必会登峰造极令人发指,于是离线抢票出来了。

离线抢票去年就曾经出现过,被称作抢票国家队。所谓的离线抢票就是服务器抢票,利用服务器的高速度、高带宽、信息共享优势,辅以验证码识别等无节操的技术,和千千万万在电脑前苦逼地手动买票的用户抢夺车票资源,红果果的抢劫。。

数字要做,12306便会封杀。这时候,数字公司的不择手段的可怕之处再一次体现出来。即刻抢票遭封杀后,他们就果断退出不做了。但是在用户数的诱惑前,数字只会一边哭委屈一边继续暗地里想尽办法破解12306的封锁。

 

很快的,12306就开始行动,在26日晚上更新之后,封锁了数字的离线抢票服务器。但依旧是那句话,被数字认定的市场,它是绝对不会善罢甘休的。有决心是好事,只是把决心用在这种事情上,真是让人心寒。27日数字发了简单的公告,说暂时不能用,但是下午旋即又能继续用了,可见数字做了多么充分而无节操的准备。

 

这时,12306做了一件很让我意外的事情(第二次意外),那就是27日晚上直接把老版本网站直接下线了。听到这个消息的我当场就惊呆了,心想他们怎么这么大胆子,万一新版挂了没有老版顶包,他们要怎么办。

 

28日春运售票首日,12306不负众望地崩溃了,崩溃得体无完肤,页面在几个小时中完全无法打开,要买票的同学在网站门外横尸遍野。我真想说,『 I told you』。

上午12306的页面几乎长期处于崩溃状态,无法打开,就算能打开也响应缓慢。这是负载的问题,而在之前我说的前端页面中所潜伏的各种问题,也被集中暴露出来。最大的问题也是最牛逼的问题就是:12306的缓慢,它能直接把你的浏览器卡死

于是所有浏览器都躺着中枪了。各种一点就卡死,整个浏览器当掉。可是用户哪里知道原因,于是你能看到QQ群里此起彼伏的声音:『我擦IE这么烂一点就死了』『猎豹也是啊不行啊』『搜狗也死了,求好用的浏览器』『傲游好像没问题我刚进去了』『没问题个屁我这里傲游最先死的』

在这种情况下,就算数字搞了验证码识别也是废柴一个,因为页面打不开,你识别个毛线。

而同时,28日的12306爆出了很大的问题,就是串号。

所谓的串号,就是说你明明登录的是A账号,某个时刻你一刷新,突然发现显示的是别人账号,联系人也都是别人的。你再刷新下,哎呀人又变了……用句时下比较流行的话说,就是,『我和我的小伙伴们都惊呆了』。PS,说这句话时,『小伙伴』一定要带上一个『们』,否则意思就不好说怎么理解了。

图片

 

马赛克打得不怎么专业,不好意思。

图片

……具体的原因不清楚,反正我认为和我刚毕业一年的那会儿做网站整出来的串号不是一回事儿。姑且认为是12306的状态服务器出问题了吧,值得一提的是这个串号的问题一直在后面都有,除了45日爆发的比较重大外,其它的影响不是很大。这时,很多人开始『刷妹子』了……他们无聊了开始各种刷新12306的网页,期待突然账号穿越进到一个女生的账号里面拿到手机号和人的信息什么的……古有后宫嫔妃组团刷皇上,今有票友无聊刷妹子……虽然我不太明白刷到了有啥用,但是显然他们乐此不疲。

 

这里顺带提一下数字的二代抢票,就是访问一个网页版的买票页面而不是12306。很多人会奇怪为啥12306卡成那样儿这个不卡,并由此认定360技术很牛逼。但事实是:

l  数字做的是纯静态的页面,服务器处理这些请求,在带宽足够的情况下,完全无压力

l  数字做的是前端的页面,真正的请求发送还是直接发送给12306了,所以12306卡慢不出票的时候,它也只是界面不卡,也不会为出票提供任何帮助

l  当然,你可以说界面不卡就很牛逼了。但现实是,这个不牛逼,这个是很正常的。12306之所以能把浏览器卡住,一方面因为它的前端页面和动态请求没有分离处理,服务器爆卡之后会直接影响到页面加载(体现为反复刷新才能完整打开页面),另一方面是因为其前端的实现技术(不走寻常路,卡服务器的同时会卡死浏览器的UI线程)

l  数字的整体实现方式,和我做过的那个专门手机上访问的极速版是一样的。只是我没优化为电脑上访问而已。

 

承前之言,验证码识别在系统网页完全打不开的时候,是没有多大用处的。但是,起不到很大的作用不代表12306会放过这个。

终于,123112306升级了验证码,印证之前我一直的说法:验证码很容易换,但是你害了所有要买票的人。这次12306换的是彩色空心验证码,并且是GIF格式的会晃来晃去的。就是这种。

确实很晃眼,很多人说这是摇篮验证码。事实上这幅图我是从数字公司的微博里截的,因为这贱货在1231日居然还腆着脸发了一篇微博,叫『12306:请不要把“验证码”变成“密码锁”』,在这之中陈述了新版验证码的难以识别、用户很反对、自己验证码识别大大提高了买票效率云云,呼吁12306改成简单的验证码(好方便他们继续识别来破坏12306正常的买票秩序)。括号里的话是我加的,但这就是他们的目的,他们也一直是这样,绑架用户,假借用户的名义来行自己的苟且之事。

面对这样一篇微博,我就只能呵呵了。值得一提的是这篇微博评论很精彩,当然数字是不会放过这些评论的,不断地删除着,但是我看得很哈皮,所以情不自禁地截图了。后面有机会放资料的话附上。

 

回到验证码的问题上来。这种验证码虽然看起来很难识别,但其实只是对于人眼而言,因为GIF动画拆开后中间有两帧是完全分离的,没有变形没有干扰,其实更容易识别。没几天有个朋友给了我一个SDK,说是识别率非常高,我测试了一下识别率达到99%,要知道同样的SDK在老版本的验证码时代,识别率不过75%,所以这个验证码改版几乎是失败的。

当然,还是承接我之前所言,数字这货一边腆着脸假装为民请命的同时,背地里继续派人手继续破解,没隔一两天他们就又继续自动识别了。不仅如此,他们还高调宣布『我傻逼又回来了!』,另一方面还派枪手大量发公关稿,歌颂自己技术牛逼的同时不忘踩其它浏览器一脚,说他们统统不行不能自动识别了,只有自己破防了(我很纳闷他们是怎么把这个敢说是自己的防守的,人不要脸天下无敌这是),外带狠狠吐槽一下猎豹,说猎豹这丫的技术不行做不到革新终将会被淘汰。

看到这里的时候我又想呵呵了,一个验证码识别居然敢说成是自己的技术革新,也就是数字公司这样的败类能干得出来了,验证码到底为什么出现、为什么会变成这样,大概他们是永远不会去告诉他们的用户的。

哦对了,一直忘记了说猎豹。猎豹的订票助手今年一直是我在做的,嗯,所以之前的订票助手的描述同样适用于猎豹。我做的时候一直秉承着完善12306、为12306服务的同时为用户服务的目的做的,取中间个人能做到的折衷,也遵守着12306正常的运营规则,呵呵,我感觉我的节操要比数字公司什么的好上好几个数量级,这些垃圾都死开吧。PS,猎豹其实也在一直跟我提验证码识别,但是我都尽量去阻止他们策划这样的功能,但是兔子急了还咬人,后来发生的事情……呵呵我不好说。

 

1231日的时候,我突然发现12306的自动提交有了点儿变化,如下图所示。

没错,『输入验证码后自动提交』,这个是订票助手才有的功能,而早期的12306其实是没有的。突然我发现他们在一边封这些垃圾抢票的时候还在继续吸纳订票助手的功能,顿觉非常欣慰。

 

同时,这天12306还有个很要命的限制,那就是验证码无法连续刷新超过三次。这个限制非常要命的原因是误伤面太大,攻击范围太广。用脚趾头想想也知道这个限制完全是为了封锁数字的自动识别验证码(识别错了自动刷新,刷新几次就封)以及离线抢票等一干应用。

但是,问题就是,这个限制的攻击面实在太宽!!当天我还在纳闷,为啥我看不清验证码点了两次后就看不到了,刷新一下页面居然还显示成空白了 = =#,折腾会儿后才发现这个规律,点击换验证码两次后就直接被封了,表现很简单:一片空白。

抓包你就会发现,在这之后,你再去请求验证码,服务器是果断无视你的。

封杀的方式很多,但是这个封杀的手段是很笨的。

 

一转眼到了元旦。嗯,之前提过的,1日,某数字又非常贱格地继续自动识别验证码了……捎带提一下,数字的验证码识别做的还算不错,之前包括这个版本平均识别速度在100毫秒以内。

元旦的12306非常卡非常慢,慢到什么程度呢,慢到你可能根本无法打开网页,然后等着等着……浏览器就死了……

抓个包说明下到底怎么慢的。

 

嗯……在一分钟的等待时间过去后,返回了504错误,无法显示页面。连续的504,就没有打开的时间(PS 这个已经是晚上十点后的抓包了,按理说不是高峰期了……所以很奇怪。早上的远比这个惨烈)。

 

23日的时候,开始渐入高峰期(按照推算,最高峰在7-10日)。

12日晚上发生了这么一件离奇的事情,那就是新浪微博上一个自称是12306工程师的家伙发了一篇微博,说『我们一直在改变,只是你们看不见』,其中各种痛斥数字之类公司的无耻下作,正中我下怀,正准备顶的时候突然发现里面提到了他们学习猎豹浏览器,于是我在纳闷如此指名道姓难道是软文。后来跟人聊起这事儿,他说他一开始也认为是软文,但是他看到最后一句话,说如果有天你们发现了动态验证码又变回静态了,说明啥啥啥的……然后第二天,12306果然就换了验证码,然后他就信了!……

我回想了一下,好像确实如此……那不是应该跟我学的么,我的名儿去哪里了。

好吧不计较这个。2日的时候12306确实换了验证码,由原来的晃来晃去的验证码换回静态了,但是大幅提高了难度,这主要表现在:1,验证码各个字母颜色不再有区别,而是统一的颜色;2,验证码字符的扭曲角度不再一致;3,开始出现会随机变换的背景和移动的干扰线。有同事说,在对抗验证码识别的路上,12306终于找到了正确的方向。

验证码的更新当然意味着人眼识别难度也会增加,但是……谁是这一切的始作俑者呢,呵呵。同样受到影响的还有那些没有大面积普及的自动识别验证码的软件、包括收费软件,这是我能想到的数字这些厂商无节操行为所能产生的唯一正面影响。

 

4日的时候……12306终于史无前例地崩溃了……崩溃得淋漓尽致,仿佛三伏天下了一场大雨,而你奔跑在雨中……

究竟到一种什么程度呢,那是一种你打开12306,圆圈儿转了一个小时也打不开的意思。每当整点放票的时候,12306沉浸在崩溃的海洋中,很难打开,难到就只剩下难了。到底有多难呢,抓包看看吧。

注意看时间列……都在一分钟以上,还是偶尔能打开的那种……

 

大概为了调优,中午12306进行了调整。但是除了没有崩溃之外,系统慢如蜗牛的情况丝毫没有好转——但是好歹可以打开了。就在这时,更大的问题再一次爆发了,那就是串号。

这会儿我没闲着,因为赶脚验证码难以看到,于是我在助手里面给放大了……原来是酱紫。

我给改成了酱紫……

值得一提的是,在18日后12306吸纳了我的这个改进,他们的也放大了……不过可能他们认为我放得有点儿过头不好看,所以保守了点儿,变成了酱紫。

 

OK 这就到15日了。

……惨不忍睹的回忆。我想进去看看咋样了,结果上午高铁动车放票后,从11点开始,我登录到1220,都没进去……各种页面无法打开,验证码不出来,无法登录,同时使用猎豹 chromeIE,仨浏览器都在12306的爱恨情仇中死去活来……反正就都没进去就对了……

然后有幸进去的同学这么跟我说……

……请允许我骄傲地得瑟。

 

除此之外,5日的串号问题更加严重,于是『刷妹子』人群更加庞大。

5日还出现了一个蛋疼的事情,央视新闻联播中播放了这么一个片段,说是热门车次40秒半数卖光……我实在理解不了这事儿说明了什么,难道这是啥值得沾沾自喜的事情了吗? 

5日开始,到10日左右,12306都处在一个平稳期。什么叫平稳期呢,就是老问题依旧,新问题也没怎么出现。老问题就是一到整点就卡,各种卡慢,浏览器各种挂,外带没票。

这段时间里,数字继续玩它的离线抢票和验证码识别。受制于新的验证码,数字的验证码识别率降到了40%50%之间,并且放弃了自动重试的方案,一次识别失败就算了,并且识别的速度大大下降,一次识别大概需要300-500毫秒。好吧……在他们看来这又是创新,这特么地叫手自一体……我早饭都给恶心吐了。

而在这段时间里,虽然12306表面上看起来没变化,后台却在不断调整。所以,虽然789三天是最最高峰的时间,反倒很平稳地过去,没有发生像28日、45日那样的长时间瘫痪的场景,也没有出现那样大规模的串号事件。

当然,12306表现平稳不会更糟,也算给我一点轻松的感觉。但是这只是不会更糟而已,各种卡、慢和不出票以及提交不了订单才是关键性问题,但这问题太大了,所以想在这高峰时期解决是不可能的,所以不会更坏已经是很好的事情了。 

8日的时候出了这么一个事情,就是央视用了很大篇幅(相对来说很大……)说了黄牛囤票的事情,并且动用了毫秒级刷新、自动识别、秒级提交以及一分钟囤票上千张的骇人听闻的字眼,并且辅以真实的视频体验,让人在愤怒黄牛的同时愤慨不已。

但恕我直言,单就视频而言,本身并没有很大的亮点。下面解释一下。

一则所谓的毫秒级刷新是一直都有的事情,这是因为12306前台看起来好像没到5秒不让查询,但其实这只是按钮可点上面做的动作,后台没有任何限制(值得一提的是后来12306改成过2秒就可以点了……)。早期我也认为这个应该加以限制,并且很简单,但是最近我仔细思考整个查票机制后才发现这个时间几乎无法限制,并且限制起来不够稳定;

二是自动识别验证码,这个不解释了,很关键,当然数字也一直是玩这个的,怎么不见乃们骂了,只是因为数字不收钱吗?

三是秒级提交,都说你在那边卡着呢他们已经把票全部弄走了。窃以为不可能,因为黄牛再黄用的也是同样的接口,必须和其他人竞争。当其他人卡的时候他们不可能会有先机(网速快之类的客观条件排除),除非12306给他们优待,或者他们找到了12306的上游服务器直接提交。 

虽然我不以为然,但很明显不明真相的群众永远是很容易被煽动的,于是到处在声讨黄牛的作恶,并且质问12306一点动作都没有,就眼睁睁地看着黄牛囤票。

之前说过,公司化的12306战斗力翻倍了,一个很关键的表现就是响应力高了很多。在舆论滔滔面前,他们一面表示着自己和黄牛决战的决心,一面也在真正的开始有动作,而这正是我担心的事情。

自古至今,就没有完全的自由和方便,因为你足够方便后,就总会有人去钻空子做些伤天害理的事情。同理,你太过于相信人的时候,一方面正常操作的人不会有什么障碍,而另一方面总有人会去使手段耍心机,更别提某些公司是在组团暗渡陈仓了。如果要限制,那就必须有些规则需要去制定,所有人都共同遵守,而所有的人哪怕你是正常的人,都要受到同样的约束,便会带来不便,如何在这之中寻求最优化的方案,往往需要很长时间的摸索,这显然不是临门一脚的草率决定所能带来的。

于是,在9日的高峰期过去,当这个话题开始被炒热之后,在有众多的『专家』谏言乃至站着说话不腰疼之后,12306终于有所动作了。

于是,从10开始,用户在正常买票过程中被强行退出登录、被限制的情况也越来越多。因为当你没买到票时,你所期望的也便会是通过刷票来获得一张退票,或者余下的票。而当好不容易出来一张票的时候,也会有人多人去争抢,由于各种原因(网速,排队,CDN等等),你的提交也许会失败,这时你会期待多试几次来看看是不是会侥幸抢到手。很可惜,在这几天的修改后,如果你刷票刷得过多,或者企图多提交几次订单,就会被系统无情地强行退出登录(或者登录被限制,任何提交的订单都只有一个结果,那就是……未知错误,看起来系统收到了请求返回了正常的结果,但是……就是不对)。

这一切,都可以说是在这些热点被炒热后,12306所会做出的正常的应激反应。而这些限制并没有经过长时间的磨合,并没有经过时间的验证和调优,在高峰期就匆忙上线带来的影响是很恶劣的。而用户不会想到更深层次的原因,他们只会又一次把矛头指向了12306,那就是12306太菜,黄牛限制不住,反而处处为难要买票的人。

其实此刻我挺同情12306的。有人驳斥我说12306花了那么多钱搞出这么个渣系统,没有什么可同情的。但是恕我直言,花钱是一方面,12306这是个花多少钱都无法完美解决的问题。我对钱不是很敏感,所以我一直这样在贫困线上挣扎着…… 

在这之后,又一个问题映入了媒体和各个企业公关部的眼帘,那就是身份证。

没错,12306的身份证号码一直没有与公安部联网,所以一直校验不严格,随便编个身份证号码就能顺利订票,这也成为之前黄牛倒票的一个重要环节。但是这个问题比较难以搞定,因为以高峰时刻12306的访问量,想同步联网公安部系统做校验,对方是否可以承受得了这个压力暂且不提,步骤的冗长会导致各种问题变数太多,需要很长时间的磨练和调整。

只是有趣的是,当一个问题被挖掘开来后,人们都很善于思考,于是就有记者一次又一次地用着『西门吹雪』、『蜡笔小新』、『樱桃小丸子』和『庆丰包子铺』之类的名字去买票并且取票,再以此为理由诘难12306系统防护的脆弱性。只不过这其实只是一个很有趣的事情,算不得严重的漏洞……既然被媒体们说来说去的,那就改吧!

初期12306的方案是,妈蛋我不显示名字好了,你说吧……我看到这个新闻的时候乐了半天,因为我同时想起了另一个早期的新闻,说是有游客投诉景区旺季40和淡季30有差别不合理,于是管理办回复说已收到确实不合理以后统一改为50,啊哈哈哈。

后来12306又说名字和证件号不统一不得取票神马的……反正我是准备直接刷证进出站了,不用取票,取了票除了能提醒我坐车的时间外,也没啥用处。 

值得一提的是,在15日左右直到后面,12306貌似有启动了一个针对账号的封锁计划。开始时我零星看到有人问为啥订票提示『用户信息有误』,一开始我以为是他们搞错了,直到17日(不好意思去外地流放了两三天……)我准备订票时,发现也遇到了这个问题,提交订单,顺利排队,然后随后就提示我用户信息有误……我想了半天也没想明白这是啥意思,后来百度了很久,反复实验,并对比其他账号,终于确定关联一件事情。

那就是特么的我的账号被封了……我明明都还没买票。仔细想了想,感觉这可能是因为之前测试定过几张票都没付钱闹的……

就在此时,陆陆续续有很多人都反应账号被封了,封的概率还挺高。我有同事一年没买票了最近开始刷票,为了这个用户信息有误的问题疑惑了很久,和我不同的是她不是买票专业户,基本上没用过,于是她一上午都以为是自己的联系人加的有问题,折腾了一个上午……最后借别人的账号买的票。随便瞅瞅,我身边的八个同事有四个人存在被封的账号,这概率真心不低,比买车票的概率高多了。

只是我觉得最大的问题还是……这个封帐号的规则不透明,封了也没任何提示,我到现在也不知道后面应该怎么弄,就放弃这个账号么?…… 

18日开始进入买返程票的高峰期。

但是,正是由于加入了这些限制,以及封号策略,所以回程票比回去的票还要难买。看到票说人多的时候你不敢重试,因为重试就可能会被飞掉。看到订单不想要也不敢取消,因为你不知道会不会就因此被封账号。刷票也不敢刷得多,因为你不知道会不会这样的刷票导致在看到票的时候就被飞掉错失良机……每次整点放票的时候,你总能看到群里很多人的哀嚎,可能是因为被飞了……

很多时候我对很多事情都感觉很无奈,因为你明明知道是怎么回事,但是你无法告诉所有人。而很多无知的人所炒起来的事情,却会给自己带来更大的灾难,只是他们不知道。 

另外还有个问题这段时间爆发得比较明显,那就是重复购买的情况。很多人为了保险起见,一般会选择多个账户或多找几个人同时买。按理说一个账户买到后因为实名制的限制其它账户都买不了的,但是这段时间却有大量的人同时买到了……一个人买到了同天同辆车次的两张票……更有甚者一个人买四张票,然后几个账户居然都成功了,相当于一个人在一趟火车上有两三个座位…… 

所幸的是,其实回程的客流要比回去的少且平稳,所以这些问题并没有带来太大的轰动效应。

在惨不忍睹地坚持几天之后,大部分人都尘埃落定了,买到票的没买到票的都有了自己的打算,很多人的买票大业都开始收场,12306也恢复了昔日的快速和神气。 

至此,让人眼花缭乱的2014年春运购票大战,终于落下了帷幕。

15日之后,看到12306前台页面中已经出现了手机验证等内容,只是还没有公开。期待2014年中,12306能有更好的发展吧。也许变不出足够多的票,但希望每一张票都落入真正需要它的人的手中。这个愿望我无法去实现,只期望12306能做到,不知是否是一种奢望。

本日志备份自 QQ 空间,原文地址:http://user.qzone.qq.com/286495995/blog/1390570863

喜欢 (0)
发表我的评论
取消评论
表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
(43)个小伙伴在吐槽
  1. 鱼大,谢谢你,让我们平安顺利回到了久违的家,谢谢您

    秋。木木2014-04-24 01:03 回复
  2. 看完了, 其实不单单是数字, 国内的几个互联网公司有几个是有JC 的呢?

    W&X/qsh2014-02-04 05:54 回复
  3. 看完了, 其实不单单是数字, 国内的几个互联网公司有几个是有JC 的呢?

    W&X/qsh2014-02-04 05:54 回复
  4. 难 难 难 难 难 难 难 难 难

    吥喓說噯莪!2014-01-29 07:32 回复
  5. 自始至终不用也不推荐给别人使用自动识别验证码的抢票软件特别是360的抢票软件的路过~~~

    EvilBoy2014-01-26 10:10 回复
  6. 大叔,我想看数字发的那个微博里面的评论,一定很好玩

  7. 辛苦了

    浮生若梦2014-01-26 04:02 回复
  8. 啥都不说了,新年快乐

    浮生若梦2014-01-26 04:01 回复
  9. 看完了,从开始互联网买票就开始用木鱼的订票助手,这些互联网公司确实是一群无节操的流氓。又是一年春运,木鱼辛苦了!

    沙朔2014-01-26 03:09 回复
  10. 只能说我是在这场春运大战中很受伤的一位,“硬座无坐”这样子

    罗汉果2014-01-26 03:09 回复
  11. 只希望票能落到真正需要回家的人手上

    辵在红毯仩2014-01-26 03:09 回复
  12. 木鱼,不愧为大神,很牛逼的不带一点儿瑕疵的大神。

    伫 望2014-01-26 03:09 回复
  13. 而很明显的,公司化的12306战斗力翻倍了,嗯……原来只有2.5,现在有5了 恩 战斗力只有五的渣滓

    哆啦A梦-IT版2014-01-26 03:09 回复
  14. 希望在天朝多几个像你这样的人,这样也是给那些真正买票的人一个机会。支持你!

    哈哈2014-01-26 03:09 回复
  15. 关于"重复购买的情况"个人猜想是12306偷偷放松了限制以缓解服务器压力.

    成林2014-01-25 12:51 回复
  16. 1,2都有看,我也说几句。
    一、针对数字的事情,他们是很高调,他的影响力主要导向了媒体,然后被放大。但是也有低调的,就是央视那个视频里放的工具“车票无忧”,那个工具做得也很简洁,刷票速度很快,对于12306的攻击力丝毫不比数字差(他们还转过数字的微博,说离线抢票我们早就有了,自吹中-,,,,),只不过他们宣传不给力,用的人么有数字那么多。我春运这段时间用它也买到不少票,特别是在整点放票的时候,它的速度平均比助手快半分钟左右,以至于后来,12306在做改变的时候,我都想花几十块钱变成1个月的专业版来抢票(我不是黄牛,我只是为朋友们抢票,人太热心,fuck~!)
    另外,大概是22号,发现车票无忧用不了了,查询就是提示网络错误,这时候我就觉得,央视影响力太大,铁路这边的肯定插手了。然后,顺带的它旗下的"离线抢票"在几天后也用不了,提示为:“正在配合铁警调查,暂停提供抢票服务”,就这样,明明在暗处的小公司,被一个央视曝光,死在了数字的前面,当然了,数字也不可能死-_-。
    二、看到有人评论说公安信息对接的问题,说几句:公安的信息数据库是高安全级别的,不可能随便让你copy,这个对接,目前看来只能是注册的时候,添加联系人的时候,5分钟后生效(这个时间内与公安同步)当然,这个对接,在春运期间也是挡不住的,多少人会临时找人帮忙,公安那边肯定扛不住,他们也没必要为了你12306升级自己的服务器性能。所以我们只能期待更强的数据中心出现?(SB想法。。。)

    三、针对助手的,我想说,一直都很赞,只是有时候12306变化太快,你来不及跟上,还有前几天的编程失误,让大家苦恼了那么几个小时,还以为是助手被封杀了,[em]e120[/em] 功能上,需要改进的地方不太多了,几乎做到极致了,12306也抄得差不多了,我觉得,他们应该在今年春运过后,给你发一封感谢信,尼玛,不是官方的,就算是个程序员给你发一封感谢信也行啊,这么明目张胆地借鉴,总不能谢谢两个字也说不出口吧,那么大的公司!

    四、针对猎豹,我不知道猎豹和金山的关联有多强,其实我一直很鄙视金山,但是不知道为什么猎豹在某些事情上跟金山的风格不太一样,也许是管理者的独立性?

    五、快过年了,我这段时间帮助亲戚朋友同学,成功刷到,捡漏,20张有余,全部是热门地段:广州,深圳,上海,北京方向的,在此郑重感谢超超造福广大人民群众。继续加油,我挺你到底。最后,新年快乐哦~ [ft=#444444,,tahoma, microsoft yahei][/ft]

    ヤ簫ぃ憶風メ2014-01-25 11:19 回复
    • @ヤ簫ぃ憶風メ:猎豹从属于金山网络,金山网络和金山集团是独立,只是投资的关系。
      对于你提到的第一点,之所有车票无忧能存活那么久,关键就在于用户量少,否则他们不可能会活这么久,相信他们自己也知道这点,而不是他们不会宣传。而他们搞出的离线抢票之所以被查,相信也是更深层次的原因。
      再者就是,车票无忧作为比较低调的软件,其实已经类似于黄牛软件。为了能获得实际的功能,他们是会做出很多出格功能来保证效果、从而保证用户量的。虽然我十分鄙视数字,但是这方面它会比这些软件做得有分寸。换句话说,车票无忧死了,完全是自己作死,他的软件利用的12306的漏洞十分多。

      再者,要买票不错,但我提倡文明购票,而不要不择手段的买票,甚至不惜一切手段纵容这样的软件、只要买票就行。
      所以我鄙视你,从现在开始请不要用我的软件,谢谢你的合作。

      木魚2014-01-25 11:26 回复
  17. 早该换换思路了,各路神仙的插件都可以为大家省不少时间,为什么12306就不能主动一点给动动脑子改正下下!

  18. 我看完了……

     2014-01-25 09:58 回复
  19. 一如既往的支持鱼大,感谢鱼大!

    比卡2014-01-25 02:49 回复
  20. 哎 鱼大辛苦了!

    呼呼2014-01-25 02:49 回复
  21. 我觉得刷身份证取票足矣,你要弄错误的身份证号码名字就取不出票不就解决了吗?根本无需要验证

    ALLEN2014-01-25 02:49 回复
  22. 木鱼,祝你过一个好年!

    追梦人2014-01-25 02:49 回复
  23. 木鱼,祝你过一个好年!

    追梦人2014-01-25 02:49 回复
  24. [em]e100[/em] 刷新看到的,逐行看完了。。。。。。。
    我只想说菜刀就是菜刀 ,希望每把菜刀由切菜者切菜。

    感谢鱼,我经常借助你开发的助手,帮认识和不认识的人订票。 [ft=,,宋体][/ft]

    牛飞面2014-01-25 02:49 回复
  25. 专家解释:“12306的业务没有你想象的那么简单”,但却比我想象中的还要烂……

    木槿花萧2014-01-25 02:48 回复
  26. 居然看完了

    o0O⊙O0o2014-01-25 02:48 回复
  27. 我很少一次性有耐心看完这么长的文章!

    观自在2014-01-25 01:25 回复
  28. 呵呵,终于看完了…现代人都希望能够解放双手~~~

    农舍布衣2014-01-25 01:06 回复
  29. 身份证验证神马的,不用要提交时了连公安部的网,而是在注册时连就可以了。存量用假身份证的用户给个提醒让更新就行。我这也是替12306捉想

    成林2014-01-24 11:40 回复
    • @成林:赞同,注册时调用一下公安局的数据库,应该可以实现吧

      观自在2014-01-25 01:26 回复
    • @观自在: 你不一定总是为自己买票的。

      木魚2014-01-25 01:28 回复
    • @木魚:说错了,是追加乘客信息时

      观自在2014-01-25 01:40 回复
    • @观自在: 同样限制很大

      木魚2014-01-25 01:44 回复
    • @木魚:介个,我就不懂了。那从公安局那copy一份到12306呢?可行不?

      观自在2014-01-25 02:17 回复
    • @木魚:那把公安局的数据库copy一份到12306去可行不[em]e113[/em]

      观自在2014-01-25 03:42 回复
  30. 虽然最终如意买到了票,再回过头来看2014春运购票,可以用惨烈形容

    kingww5882014-01-24 10:59 回复
  31. 跨擦。真真是极好极好的

    [12]諾殇2014-01-24 10:46 回复
  32. 对于数字公司,万恶。

    Exception++2014-01-24 10:44 回复
  33. 写的真长,买票真难,战斗真惨,数字真513

    穆曾燚2014-01-24 10:31 回复
  34. 怀孕两年,好经典!

  35. 自己知道的,不知道的,今天都明白了一些,明天就要回家了,激动昂!

    岳明2014-01-24 10:16 回复
  36. 看完之后 久久不能平静

     2014-01-24 09:59 回复