查看原文
其他

迷之自信?12306给自己的技术团队打90分!

2018-02-07 51CTO技术栈

一个猝不及防!2018 年就这么来了!离农历春节还有几天……史诗级巨制大片《春运囧途》已经在全国各地同步上映!


春运的精髓,简直就是人人人人人人人人人人人人从从从从从从从从众众众众众众!


春运时候的车站都是这样的↓

然鹅挤还不是最痛苦的!最痛苦的是,我们连回家的车票都可能抢不到!想挤都挤不了!


遥想当年,12306 幺蛾子不断,网站总是比我们先崩溃就不说了。有事儿没事儿就说我断网了,咋地,其他软件都能连上网,就你不行!你难道不该反思下吗?

12306:春节抢票高峰已过,技术团队为自己打 90 分以上


就在最近,据中国之声《全国新闻联播》报道,铁路客服中心 12306 负责人表示:12306 最高峰抢票时段已经平稳渡过。


今年春运 12306 售票系统首次没有出现卡断现象,技术团队为自己打 90 分以上。

今年春运全国铁路预计发送旅客 3.9 亿人次,日均 955 万人次。12306 数据显示,1 月 3 日发售春运车票以来,截止 2 月 1 日共发售车票 3.5 亿张,其中互联网售票为 2.8 亿张。


中国铁道科学研究院电子所副总工程师兼 12306 技术部主任单杏花表示 2018 年售春运票期间铁路部门上了一套风控系统,不仅对系统的稳定运行进行了保护,还对抢票中给系统带来危害的行为予以一定的防范。


从网络情况来看,发现第三方抢票软件的成功率相比 2017 年春运有所下降。

这则消息一出来就遭到了广大网友的吐槽,纷纷表示哪来的自信?那么,问题来了,你对这件事怎么看呢?还有你抢到票了么?

为什么耗资数亿的 12306 一直都非常难用?


11 月 23 日,12306 网站购票系统全面接入微信,至此,银行卡、支付宝、微信均可购买车票。


任何一个使用过网络售票系统的人都了解,12306 的用户体验不是一般的糟糕,每逢春运,12306 几乎都被推到风口浪尖上。


充满乡土气息的界面,系统响应卡顿、延迟,每日长达 7 个小时的系统维护周期,奇形怪状的图片验证码,每天只能取消三次订单的强制规则……都使 12306 成为全国人民最为头疼的一件事。


用户体验如此之差


其实早在 2010 年 1 月的那个春节,12306 网站便开通并进行了试用,结果,也就是在这个春运高峰时期,在全中国网民的高流量“点击”之下,12306 网站出现了严重宕机。


也就是从此时起,12306 便开始了为人所诟病的历史......

  • 2013 年,12306 网站改版上线,新版网站增加了自动查询、自动提交订单、有票提醒等功能,并开始对互联网购票进行身份信息核验。同时,12306 手机客户端正式开放下载,并新增支付宝通道。

  • 2014 年 12 月,12306 预售期由 20 天延长至 60 天。

  • 2015 年,12306 关于购票、退票和改签时间的相关规定开始进行调整。

  • 2016 年,12306 网站新增“余票动态信息栏目”,手机 APP 新增列车正晚点查询服务。

  • 2017 年 11 月,12306 网站微信支付功能上线试运行。

  • 直到今天,12306 仍在功能迭代和系统升级中持续的“缝缝补补”。


为何总要“缝缝补补”?


如果将春运售票与淘宝等电商平台“双 11”订单业务挑战进行相比的话,前者在业务复杂性上更具挑战性,而后者更多的体现在业务规模上。


比如,乘客购买一张车票,理论上这一区间票会同时存在多个站点,而乘客每买一张车票,都基本上是不同区间车票的订单。


如果再加上订票者的“学生”或“成人”信息,选择上下铺、优选号等选择,那么无论查票、出票、支付等逻辑上,都要比电商平台上订单系统复杂得多。

第一个特点就是并发非常高。


根据官方数据显示,12306 网站 PV(页面浏览量)目前每天都超过 400 亿次,这个数字远远高于淘宝双 11 时同时访问的人数。


因为,除了有真正购买需求的全国网民之外,同时还有机器人、订票机器在大量的进行刷新,并发次数非常高,包括优化数据库访问、分布式、缓存、负载均衡等技术挑战摆在眼前,都无法解决服务器高负载的问题。


第二特点就是峰值不均匀。


想必大家都体验过,临近年跟,摩拳擦掌准备好高速网络同时在页面和手机 APP 上进行手动刷票,但几乎就在一瞬间,有座的没座的,车票早已售空。


比如,涉及到河南、安徽、四川、广东等地的火车线路时,基本每一个订单都会被疯狂抢购,峰值极为不均。


相比淘宝双 11 来说,某些爆款页面因为服务器上突然产生高流量负载,出现了暂时无法响应或下单失败的情况仍是少数。


另外一个特点就是 SKU。


SKU 即最小管理库存。在淘宝双 11 时,多数人都经历过当天下单,但往往不会当天发货而是高峰过去之后再发货的情况。


这也就是淘宝 SKU 数量的问题,也就是说,出售一款产品,目前现存 1000 件,但同时 2000 人下单时,商家可先出售 1000 件,再随后补货上架。也就是说实际的 SKU 数量是 2000 甚至按照客户订单来完成的。


而火车票,因为订票实名制,分配座位都是对号入座的。每个时段每趟车次每一个座位,系统只能售卖一张。


而实际上,无论你是不是身处春运高峰时期,全国 13 亿人次庞大的流动需求,迫使你购买的火车票最小库存 SKU 永远只有 1 个。


实际上,在互联网售票之前,网点售票已实施多年。也就是说,在铁路售票系统内部也是个庞大且复杂的跨地域系统进行支撑,包括涉及的业务逻辑、软硬件供应商、版本与维护协议等方面。


因此,有着严重历史包袱的 12306,在诞生之初并非是为了重构原有的售票系统,更多是为了缓解当时日益紧张的售票系统压力,首先仍是原有的系统上做 Web 前端,这才是根本上的问题。


正如总有人会豪言,自己能设计出一个比 12306 更好更廉价的购票系统。那么,关键的一点是,面对此时此刻的问题,你又会如何处理呢?


还记得被 12306 奇葩验证码支配的恐惧吗?


你抢到了回家的火车票吗?火车票可不是你想买就能买的,就算你耗尽了运气,赢得了网速,避过了黄牛,很可能你最终还是会败给验证码!

不过今年值得喜大普奔的是,那些年打败 99% 购票者的奇葩验证码,所占比例已经被压缩到 15% 以下了(然并 X,还不是买不到票)……

今年 12306 网站的验证码,堪比当年的《开心辞典》、《幸运52》,每道题都有十足的含金量,话不多说,小编要上图了!


- 01 -

热点送分题


在网上吃了一年的瓜,是时候检验你有没有把实锤了

先放道简单的题来铺垫一下,相信全国人民都做的出来。

这道题做不出来的,可能需要检测一下自己的爱国程度了

你说你,好好的互联网大佬不做,为什么要转行去唱歌!对,就说你呢!


- 02 -

脸盲题


此类题专门针对脸盲设置,一个 AI 就能解决的问题,你要看十年。

小四由于身高问题无法入镜,只能留个空白聊表安慰了

现在真是随便一个都敢自称天王嫂了你你你..先告诉我天王是谁!

懂不懂球我不知道,胖是真的......

罗永浩,罗振宇,傻傻分不清楚......


还有两道世纪难题,至今无人做出如果有勇士敢答,在留言区留下你的答案

- 03 -

语言碾压题


坐火车从一个城市到另一个城市,没一点语言技能是万万不行的。

看完这个,我觉得广东话也可以出一题,什么黑凤梨、猴赛雷啦。

知道你们看不懂,不过可以猜,意大利语:点击下面的所有狗。

掌握多国语言说我爱你,不仅拉轰,还可以帮你抢到票


- 04 -

学霸型题


这类题可能要动用你不存在尘封多年,九年义务教育的知识储备,当然个人建议,碰上还是刷新了吧,毕竟有几把刷子,自己心里有那么点数的。


地理、历史、生物、数学,应有尽有,包君满意


以上纯属恶搞,请勿认真,谁曾想,本意是用来防黄牛的验证码,反倒变成了我们能够回家最大的阻力,因为验证码的难度永远跟不上黄牛升级的速度啊..

你对 12306 技术团队为自己打 90 分以上怎么看?你抢到了回家的票吗?欢迎小伙伴在底部发表神评,与我们交流!

精彩文章推荐:

有个厉害的程序员女朋友是什么体验?

再不看就晚了,我用Python抢到了回家的火车票!

150页重磅干货!阿里开源AI核心技术,99%程序员受用!

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存