有711.7万笔异常交易被放入了慢速队列中,其中有102.3万笔交易被拒绝出票,还有133.1万张车票被拦截下来。

该组数据来源于12306在中秋节和国庆节期间进行的反黄牛专项行动。没有发布会,也没有热搜,但是对节假日抢到票的人而言,意义十分明确:一些本来会被机器或者黄牛占有的车票又回到了普通的乘客候补队伍中来。

打开网易新闻 查看精彩图片

过去的几年里,12306都是最容易被投诉的国家级应用程序。

放票的时候登录不了、查询页面卡住了、支付之后订单出现了问题、热门线路一上线就显示没有余票。普通人的做法是设置好闹钟,在手机上不停地刷新,但是仍然抢不到火车票。

问题不只在于网络速度上。

抢票软件可以利用程序不断发送请求来控制大量的账号,并且会推出所谓的“加速包”。价格为几元、几十元乃至上百元不等。平台告知用户付费之后可以获得更快的速度。

但是速度可以影响到买票的结果吗?

打开网易新闻 查看精彩图片

按照目前的规定来看,所谓的加速包是不能够影响到12306排队顺序的。主要是为了营造出一种紧迫感来。12306已经多次表明,并未和任何第三方抢票平台进行过合作。

候补购票功能开通之后,该种收费方式就受到了更大的影响。

没有座位的时候,乘客可以下单购买候补票,并且要付相应的费用。如果有人退票或者是铁路部门增加了车次的话,那么系统就会根据候补顺序来自动分配。以前退掉的车票又回到了票池里,看管的人是谁、执行的速度有多快,谁就能先拿到。现在的退票可以直接加入到候补队伍中去。

候补购票的成功率大约为七成左右。它不能保证所有人都能买上车票,但是可以把竞争由原来的“哪个机器快”变成了现在的“谁排得早”。

这也是近几年来12306发生改变最多的一个地方——除了加快售票速度之外,还会对一些不正常的购票行为进行干预。

打开网易新闻 查看精彩图片

被放入到慢速队列中的交易一般都会被认为具有机器操作的特点。被拒开发票的交易就有可能出现异常付款或者大批量提交的风险。对于被拦截掉的车票,系统会进行重新处理,并不会让这些车票一直滞留在黄牛那里。

今年中秋节和国庆节的时候,12306一共拦下了133.1万张火车票。在五一小长假的时候,系统就拦截了105.6万张。把这两组数据放在一起来看的话,反制黄牛已经变成了一种长期存在的机制,并非是临时性的行为。

但是回到十几年前的时候,12306没有今天的这些技术水平。

2011年开始实行了铁路联网售票。以前乘客主要是通过车站窗口、代售点来买票。春运的时候人们排着长队等好几个小时或者一整夜才能买到车票。网上售票本意是为了解决排队的问题,但是刚开始的时候也带来了一些新的问题。

网页打不开、验证码不能加载、查询结果一直没出来、付款之后订单也没有马上出现。在2012年的春运时期里,由于12306系统出现了很多的问题而被曝光了出来,并且社会上的批评声也越来越大了。2012年1月份的时候,当时的铁道部副部长胡亚东对网站运行不顺畅以及春运买票困难的情况向公众表示歉意。

打开网易新闻 查看精彩图片

为什么会出现这样一个售票网站呢?

由于火车票不同于一般的商品。

电商平台出售一百件相同的商品,售出一件之后库存减少一件,剩下的九十九件继续售卖。但是火车票有车次、座位号、始发地和终点地等信息。同一个座位可以由不同的乘客分别购买,而一张票又会涉及到很多区间内的剩余座位数。

一列火车经过十几站之后,理论上就会产生很多个区间组合。每次卖出去一张票的时候,系统都会马上把相关的路段的信息进行更新。全国所有的列车都在运行中,车厢里的座位、实名制信息、付款情况以及各个站点的数据都必须做到同步。

这并不是简单的库存增减。

打开网易新闻 查看精彩图片

当年12306所用到的系统对于铁路内部确定性的业务可以很好地进行处理,但是不能够应对互联网高峰时期大量的并发查询。每次查询都会马上计算出剩余车票,并且当访问量增加的时候,数据库就会很快地承受巨大的压力。

从2013年开始,12306就用上了内存数据库来存储高频次余票信息,并且把这些数据放在了运行速度比较快的内存里。在2015年的春运之前,大约有75%的余票查询业务被转移到了阿里云上。铁路客流量存在明显的高峰时期,在平日与春运之间相差很大,云计算可以按照需要随时分配资源。

这一年里,在每天接近三千万人次的访问量之下,12306依然能够正常运转。2016年查询、交易以及支付系统的各个部分被分开来,从而降低任何一个环节出现错误所造成的整个系统的后果。

到2018年的春运时期,12306的日访问量已经达到了1500亿次左右,在最高峰的时候,每秒钟可以售出700多张车票。目前系统的最大日访问量为1500亿次以上,每天的售票数量可以达到1500万张。

技术进步没有使得黄牛销声匿迹。

打开网易新闻 查看精彩图片

最早的黄牛是去窗口排队的人,之后就转到了网上用软件。验证码升级之后出现了打码平台,图片验证加强之后又出现了模仿鼠标的轨迹、点击的速度以及设备的信息等现象。双方一直都在做着调整,但是普通的乘客只能被动地等待。

候补购票打破了这场比赛的游戏规则。机器能够更快地提出请求,但是它无法创造出车票来。加入到候补队伍之后,设备以及网络的优势就会减弱,排队的先后次序就变得更为关键了。

实名制也就限制了大批量囤积车票的行为。目前12306会根据账号、设备、交易频次以及操作方式来判断是否为机器人,并且对于被怀疑是机器人的订单会减慢审核速度,在最严重的情况下甚至直接拒单。

这套办法不但是为买火车票设计的。医院挂号、热门展览预约、演唱会门票等,在供需不平衡的情况下,总会有个人利用脚本或者账号的优势来抢购。12306的方式至少给出了一个明确的方向:首先发现异常情况,然后对机器的操作加以控制,并且把被解放出来的一些资源再次分配给等待中的用户。

到2020年的时候,电子客票已经全部实行了,在买完票之后就可以直接用身份证进站,并不需要再拿一张纸质车票。每次进站都必须要进行身份验证、车票查询以及闸机操作等步骤,但是这些过程仍然依靠着12306系统的实时联网以及全国各地车站设备之间的相互配合来实现。

打开网易新闻 查看精彩图片

到2025年的国庆节的时候,铁路系统的乘车已经基本上实现了无纸化的状态了。

但是技术升级并不能解决所有的难题。到2025年的春运期间,铁路运送的人数将达到五亿一千万人次;而到了2026年的春运,则会达到五亿四千万人次。春运车票是按着提前15天进行滚动发售的,在各个车站之间设置了不同的起售时间,这样做的目的就是为了分散高峰时段的大量购票需求。

热门线路仍然没有座位,但是候补不一定能成功。铁路运输能力是有限的,在需求大于供给的时候总会有人要排队等候或者不能出行。

12306可以改变的就是分配的方式了。它不能创造出不存在的座位来,但是它可以降低由于脚本插队、异常付款以及大批量囤积而给一般旅客带来的影响。

在中秋节和国庆节的运输高峰期里,已经拦下了133.1万张可疑车票。