从铁路在线订票难问CIO怎么规划IT建设
随着春节步步逼近,返乡人员购买火车票的需求愈发强烈。本以为全面开启铁路在线售票网站的订票功能能够缓解春运购票压力,而实际上却适得其反,从某 种程度上激化了供需矛盾。作为整个事件的风口浪尖,在线订票网站为什么难承压力?企业IT信息规划又何尝不会面对这样的压力,结合铁路在线订票的问题希望 企业信息化建设过程中取长补短。
事件回放:
1月1日起,全国各铁路局电话订票和互联网售票的预售期变 更为12天,提前于车站窗口和代售点。但连续两日来,不少旅客反映,因12306订票网站访问量大、订票电话线路忙等问题,屡次遭遇订、购票失败。集中体 现在网页无法打开、支付成功但无法出票、查票成功但无法登陆等几个方面。电话订票、在线订票成功率仅20%多。
背景分析
有分析表示铁路在线售票压力分别体现在访问压力、数据交换压力、出票/算票压力等方面。随着关注此事的各行各业的专家和工程师越来越多,更多的数据无不一再反应出问题的严重性。
1.数据推算网站并发用户超过500万
曾有CDN技术工程师说,从行业经验来看,春运期间,12306的并发量(同时在线访问量)达到 1GB(1GB=1024MB,1MB=1024KB,1KB=1024字节),而一般来说,每个人一次性访问只需要花费2KB左右,有时候甚至只有几个 字节。这意味着峰值时,12306网站的同时在线访问人数高达500多万。
另一则数据推算由于网上订票不成功,造成用户停留网站时间越来越长,进而引发访问压力越来越大。第三方调查机构的估算显示,访问用户从3个月前的在线时间5分38秒提高到了7分12秒,再次印证了“越买不到票,越想在线等待,不断刷新页面”的现实情况。
▲统计截图
2.定时放票终成秒杀
因为12306网站公布“互联网购票起售时间”,每天分别在8点、10点、12点和15点放票。造成流量分布不均,很多需求迫切的购票者以秒杀的心态对待火车票,造成瞬间涌入大量用户。
▲定时放票
CIO建议之一:功能规划模块化集成降低耦合度
这个问题取决于不同企业实施信息化不同而千差万别。我们可以认为一个完整功能的系统是能够涵盖所有用户、角色需求的完整系统。但是并不意味着这个系统的功能、方法是高耦合的、所有方法都是公用的。
举个简单的例子来说:在没有太大访问压力和订票压力时车次查询、余票查询也许可以使用一个查询方法把所有的值统一返回后筛选显示,但是稍加压力则会体现出单次返回单条记录10个字段值和返回100个字段值的区别。
作为优秀的架构师应该思考的是功能实现的简单化,让业务功能在实现上能够相对独立简单的完成,无论是编码还是维护都能健康发展。我并不同意用今天在线订 票网站与淘宝2011年11月11日的促销当日所承受的压力进行对比,毕竟后者用户的心理驱动和购买回家车票是无法比拟的,而且购买压力可以被大量的商品 供应商和存货给予一定的稀释。然而后者值得称道的在功能规划和系统架构优化上多年来所做出的不屑努力。
我们不是在让系统退化,而是让每个功能之间相对独立稳定的很好的完成各自工作不影响后续操作的处理。降低单个操作节点上用户停留时间,可以减少用户并发操作的数量。
CIO建议之二:性能压力与技术选型规划量力而为也需要留有余地
企业业务制度难免造成系统会遇到瓶颈,当无法因为技术而改变业务的时候只能通过变通的方法降低瓶颈时的性能压力,技术选型规划在这里尤为重要。
现今我们都知道淘宝因为大量的商品和用户信息,用了Oracle集群做数据仓库,大量的社交网站因为数据关联的复杂和大数据等原因使用No SQL。但是这些并不一定适合自己所在的企业,在做规划的时候一定要对系统未来的压力做到充分的预估并尽量设计好测试模型。
我们可以每天订票网站定点放票后的很短的瞬间网站的访问量和并发量猛增,虽然此举是有意回避访问量集中的问题而采取的权宜之计但是仍然问题频出。原因就在于压力规划没有做好。
CIO建议之三:提前挖掘出更多的有价值数据
铁路部门年年提高运力,但是年年面临客流压力的考验。这里的原因当然是方方面面的,但是过去这么多年的春运售票经验就迟迟没有有效的推算和引导民众的购票需求的方法是值得反思的。
举个简单的实例:联程火车票分流压力。从A城到B城,作为热门城市A、B两个城市直达票根据往年售票经验得出今年仍然属稀缺车票,有关部门应该根据这一情况提出预案:A城到C城后,转成XX列车到B城。
企业依赖销售数据定生产计划、商品根据销售情况定仓储规划、广告根据不同人群制定广告策略这些都是价值数据的挖掘。CIO在做系统规划是很多过程数据不保留又如何积累原始数据,积累原始数据不进行价值挖掘又如何体现IT系统的价值。
总之今天我们讨论的不是如何给铁道部支招改进在线订票网站,也不是口诛笔伐该系统的开发和维护部门的不利,而是借用这个事件让2012年中广大企业IT部门的主管能够得到一丝启发,无论做IT系统规划还是先有系统的运维要考虑周全,不要让压力压垮业务系统。
文/IT168