阅读更多

3顶
2踩

非技术

眼看着春运高峰即将来临,你准备好抢票工具了吗?

 

640?wx_fmt=jpeg&wxfrom=5&wx_lazy=1

 

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

任何一个使用过网络售票系统的人都了解,12306的用户体验不是一般的糟糕,每逢春运,12306几乎都被推到风口浪尖上。充满乡土气息的界面,系统响应卡顿、延迟,每日长达7个小时的系统维护周期,奇形怪状的图片验证码,每天只能取消三次订单的强制规则……都使12306成为全国人民最为头疼的一件事。

用户体验如此之差

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

0?wx_fmt=jpeg

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

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

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

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

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

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

为何总要“缝缝补补”?

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

比如,乘客购买一张车票,理论上这一区间票会同时存在多个站点,而乘客每买一张车票,都基本上是不同区间车票的订单。如果再加上订票者的“学生”或“成人”信息,选择上下铺、优选号等选择,那么无论查票、出票、支付等逻辑上,都要比电商平台上订单系统复杂得多。

0?wx_fmt=jpeg

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

根据官方数据显示,12306网站PV(页面浏览量)目前每天都超过400亿次,这个数字远远高于淘宝双11时同时访问的人数。因为,除了有真正购买需求的全国网民之外,同时还有机器人、订票机器在大量的进行刷新,并发次数非常高,包括优化数据库访问、分布式、缓存、负载均衡等技术挑战摆在眼前,都无法解决服务器高负载的问题。

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

想必大家都体验过,临近年跟,摩拳擦掌准备好高速网络同时在页面和手机APP上进行手动刷票,但几乎就在一瞬间,有座的没座的,车票早已售空。比如,涉及到河南、安徽、四川、广东等地的火车线路时,基本每一个订单都会被疯狂抢购,峰值极为不均。

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

另外一个特点就是SKU。

SKU即最小管理库存。在淘宝双11时,多数人都经历过当天下单,但往往不会当天发货而是高峰过去之后再发货的情况。这也就是淘宝SKU数量的问题,也就是说,出售一款产品,目前现存1000件,但同时2000人下单时,商家可先出售1000件,再随后补货上架。也就是说实际的SKU数量是2000甚至按照客户订单来完成的。

而火车票,因为订票实名制,分配座位都是对号入座的。每个时段每趟车次每一个座位,系统只能售卖一张。而实际上,无论你是不是身处春运高峰时期,全国13亿人次庞大的流动需求,迫使你购买的火车票最小库存SKU永远只有1个。

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

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

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

本文基于悟空问答“为什么12306手机客户端如此脆弱?”内容整理,来源链接:

https://www.wukong.com/question/6372701612640567554/

来自: 悟空
3
2
评论 共 3 条 请登录后发表评论
3 楼 dts228 2017-12-28 16:48
我就奇怪了。为啥子不把客户的出行需求提前放出来,摇号订票。
摇到号的,如果取消,直接扣80%就完事了。那里还有什么黄牛。抢票的说法
2 楼 hub 2017-12-23 16:49
12306 春节的并发量,不敢说远比淘宝的双11高,但是肯定是相当高的。技术团队应该是比不上淘宝的,但是这个12306这个系统的复杂性是要比这些电商系统要高,这个也要承认。不要一味的去跟风,吐槽。。。 
1 楼 mdqy195905 2017-12-21 12:04
,12306的洗白文?

混淆视听啊。12306网站PV(页面浏览量)目前每天都超过400亿次,这个数字远远高于淘宝双11时同时访问的人数。这能比?又不是并发量,只是页面访问量。这能比?

技术不行就不行。要承认。

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • 《程序员》:唯品会双11大促技术保障实践 为什么耗资数亿的12306一直都非常难用? 96年美女拿下了刘强东的猪脸识别冠军,30万奖金到手! 2017 科技大事件回顾:智能音箱大战、数据泄露于

    “技术会有一个前进的方向,我们把它称作‘必然’,也就是说,这...2017 年马上收尾,作为一名科技观察者,不管身体还是灵魂,其实一直都在路上。 这一年,亚马逊虚拟助手 Alexa 在多款品牌产品上成功应用,在 CES

  • 12306不再宕机,马云帮了大忙?

    ​从2012年开始,每到春运火车票订票网站12306便迎来一次大考。频繁地宕机,尤其是在抢票关键时刻拒绝服务,让民众对12306失去了耐心,再加上特殊的研发背景以及承载了人们买不到火车票的愤怒出口,12306长时间处于...

  • 智头条」十四五数字经济发展规划发布,工信部推动充电标准统一

    进一步强化个人信息保护,规范身份信息、隐私信息、生物特征信息的采集、传输和使用等。 《规划》明确坚持“创新引领、融合发展,应用牵引、数据赋能,公平竞争、安全有序,系统推进、协同高效”的原则。到2025年...

  • 中国云计算的十年江湖

    要知道,李彦宏和马化腾都是技术出身,对云计算的见解按说应该非常深刻。可偏偏不懂技术的 马云却力挺云计算: “我的理解,云计算最后是一种分享,数据的处理、存储并分享的机制。我们自己公司对云计算是充满信心和...

  • 我们的自由软件在哪里?

    最近公司将要拿到一个大项目,由于之前使用的tongeasy并发执行效率上不太满意,使得我们对tongeasy怀有戒心。最近一直也在研究各种不同的消息产品,希望可以找到更合适的替代品。在比较了tongeasy,tuxedo,rabbitMQ,...

  • 程序员,这样面试,你的成功率能达到 90%!

    其实你只需要搞清楚一个逻辑:“面试官为什么会这样问?他希望听到什么答案?”然后针对性的准备和回答就行了,无他。 “你的优势是什么?”多年前我觉得这个问题很无聊,现在我经常这么问面试者,因为我真的想...

  • 大数据阴谋论,南方周末以“国家安全”之名质疑阿里(一)

    2014年1月,阿里巴巴耗资10亿元人民币,控股中信21世纪公司(该公司股票后改名阿里健康) 让医药企业警惕的是,此后不久,阿里健康就推出了相关的互联网产品。 2014年7月,阿里在手机淘宝和支付宝钱包中推出“药品...

  • 软件失效的典型案例

    国内12306铁道部火车票网上订票系统历时两年研发成功,耗资3亿元人民币,于2011年6月12日投入运行。2012年1月8日春运启动,9日网站点击量超过14亿次,系统出现网站崩溃、登录缓慢、无法支付、扣钱不出票等严重问题。...

  • 终于放假了,回武汉了,狂欢三日点滴记录

    快过年了,为什么人人都忙着定火车票啊,太疯狂了,全名总动员啊。 但是我想反问铁道部: 如果你让我们其中有一个中国人民,因为没有买到票回家,你们情何以堪,  你们耗资几亿做的12306.cn,叫我们这些程序员情何

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

    近几天早上看新闻时也一直能看到「春运 2018」的最新情况,而据中国之声《全国新闻联播》报道,中国铁道科学研究院电子所副总工程师兼 12306 技术部主任单杏花表示,12306 最高峰抢票时段已经平稳渡过,今年春运 ...

  • 安装NumPy教程-详细版

    附件是安装NumPy教程_详细版,文件绿色安全,请大家放心下载,仅供交流学习使用,无任何商业目的!

  • 语音端点检测及其在Matlab中的实现.zip

    语音端点检测及其在Matlab中的实现.zip

  • C#文档打印程序Demo

    使用C#完成一般文档的打印,带有页眉,页脚文档打印,表格打印,打印预览等

  • DirectX修复工具-4-194985.zip

    directx修复工具 DirectX修复工具(DirectX repair)是系统DirectX组件修复工具,DirectX修复工具主要是用于检测当前系统的DirectX状态,若发现异常情况就可以马上进行修复,非常快捷,使用效果也非常好。

  • Python手动实现人脸识别算法

    人脸识别的主要算法 其核心算法是 欧式距离算法使用该算法计算两张脸的面部特征差异,一般在0.6 以下都可以被认为是同一张脸 人脸识别的主要步骤 1 获得人脸图片 2 将人脸图片转为128D的矩阵(这个也就是人脸特征的一种数字化表现) 3 保存人脸128D的特征到文件中 4 获取其他人脸转为128D特征通过欧式距离算法与我们保存的特征对比,如果差距在0.6以下就说明两张脸差距比较小

  • 全国大学生信息安全竞赛知识问答-CISCN 题库.zip

    ciscn 全国大学生信息安全竞赛知识问答-CISCN 题库.zip

  • JAVA+SQL离散数学题库管理系统(源代码+LW+外文翻译).zip

    JAVA+SQL离散数学题库管理系统(源代码+LW+外文翻译)JAVA+SQL离散数学题库管理系统(源代码+LW+外文翻译)JAVA+SQL离散数学题库管理系统(源代码+LW+外文翻译)JAVA+SQL离散数学题库管理系统(源代码+LW+外文翻译)JAVA+SQL离散数学题库管理系统(源代码+LW+外文翻译)JAVA+SQL离散数学题库管理系统(源代码+LW+外文翻译)JAVA+SQL离散数学题库管理系统(源代码+LW+外文翻译)JAVA+SQL离散数学题库管理系统(源代码+LW+外文翻译)JAVA+SQL离散数学题库管理系统(源代码+LW+外文翻译)JAVA+SQL离散数学题库管理系统(源代码+LW+外文翻译)JAVA+SQL离散数学题库管理系统(源代码+LW+外文翻译)JAVA+SQL离散数学题库管理系统(源代码+LW+外文翻译)JAVA+SQL离散数学题库管理系统(源代码+LW+外文翻译)JAVA+SQL离散数学题库管理系统(源代码+LW+外文翻译)

  • strcmp函数应用.zip

    strcmp函数应用.zip

  • 蓝桥杯单片机第十一届国赛设计题试做

    蓝桥杯单片机第十一届国赛设计题试做

Global site tag (gtag.js) - Google Analytics