返回信息流帖子超长,前方高能警示
=======================================================================
适逢春运时分,12306再次走到了风口浪尖上。
今日十大帖子【三格格】我看了一遍,很有意思。该帖lz旗帜鲜明地认为只要有1000万,如BAT、金山、360这些商业公司完全有能力提供做得比现在的12306更好的解决方案。恰巧这些天在知乎上,12306也正好在讨论的热点上。
楼主无意站任何一个队列,也没那个技术能力去对12306指点江山。仅仅从一个旁观者的身份,去看看12306这个网站,以及汇总一下有关12306网站各个信息。有说的不对的地方,还请指正。
=======================================================================
首先,2011年6月,12306正式上线运行,在2011-2012年春运期间,12306实际运行效果堪称惨不忍睹。网上出现了各种帖子、文章、报道揭露12306的“烂”,有的文章翻出了12306的前端代码,痛斥这些代码“简直像大学生的课堂作业”;甚至有的文章提出了自己的技术方案。
前几天,知乎上有人提了这么一个问题:12306 外包给阿里巴巴、IBM 等大企业做是否可行?,掀起了大讨论的热潮。
得到最多人赞同的是知乎用户王强的答案
该答案指出:“12306首秀被骂的狗血喷头后铁道部找来IBM、阿里巴巴等大企业要解决方案,给出的条件是资金管够但是问题得解决。几大企业最后都拒绝了。12306开始自己尝试解决问题。他们发现市面上可以买到的成套解决方案都不足以应付春运购票负载,所以只能自己改进已有的数据库(注:其实是改用VMware SQLFire/GemFire,这里我之前理解错误)。以前12306用的是小型机,发现性能严重不足,遂改用x86系统+linux平台(原平台为HP Superdome小型机,UNIX系统,Sybase ASE数据库)。最后他们的核心系统用了十几个节点(现在应该是17节点)的多路Xeon E7(具体几路待考),每个节点配1TB内存,数据库全部在内存中运行。2013年春运,12306系统峰值负载11万tps,与2012年淘宝双11活动峰值负载相当,新的系统基本经受住了考验。
该段答案大部分内容引用文章:分布式集群内存数据技术引领12306技术革命
同时,该答案还指出,12306之所以没由阿里、IBM等夺标,是因为:“他们技术不足‘搞不定’”,而阿里仅参与了12306改造工程中的排队系统改造。
答案的作者还认为,淘宝与12306的问题类型不尽相同,照搬淘宝的解决方案也无济于事,而且虽然淘宝在双十一中承担了比当年的12306承担的还要恐怖的访问量,但是由于12306的特点是放票十分钟以内访问量突发,因此在峰值上,淘宝还是比12306要低。随后,该作者指出,12306的技术瓶颈并不在服务器数量、前段设计模式、数据库设计模式上,而在"核心节点的CPU、内存性能"上。
当然,最后作者指出:这一切都是区域经济发展不均衡的错。如果初初经济发展都达到相对均衡,就不会有这么多人背井离乡,也就不会有这么多人需要在春运中抢火车票,也就不会有12306这个问题(这个观点楼主是同意的,但是同时楼主也认为这个是无法解决的,至少在短期内根本无法解决)
=======================================================================
此答案一出,一石激起千层浪,各路人马纷纷现身说法,反驳王强的答案。
其中有一位匿名用户发表了一个答案,直斥王强的答案就是一个段子。该答案从12306第二次招标过程中的猫腻出发,反驳了王强答案中关于IBM、阿里等公司“搞不定”的说法。
这里楼主补充一点关于12306第一次招标的信息:承建12306网站在线售票系统的是铁道部的下属机构铁科院电子所,在此前IBM、清华、易程科技接连被毙掉。
而在第二次招标中,联合太极计算机股份有限公司最终夺标。匿名用户的答案引用了数篇新闻报道,指出“铁道部弄了一个马甲公司然后自己投标给自己”,IBM等公司遭毙的原因根本不是技术“搞不定”。
楼主搜索众多信息,发现网上有很多的报道都质疑太极股份是铁道部的马甲,其中财新网的一篇报道则指出:“公开资料显示,2010年,铁道部在太极股份的客户营收贡献中占比2.49%,排名第五。2011年,中铁信金快(北京)信息工程有限责任公司、中铁信息工程集团有限公司成为太极股份的第二、三位采购供应商后,两家公司共占太极股份全年采购的4.97%,由于两家公司均属于铁道部信息技术中心旗下企业。由此,铁道部也从太极股份2010年的第五大客户,一跃成为了太极股份的号营收客户。”
=======================================================================
好玩的是,在王强的答案下面,出现了一个叫徐峰的用户了发表评论反驳答主王强关于12306技术瓶颈在于CPU运算速度的观点。
摘徐峰的全部评论于下:
“
又不是图像处理,CPU居然成瓶颈了。
一列车 算15节载客车厢,每节车厢100个座位,也不过1500个座位。
现在主流CPU的频率是每秒运算30亿次。 CPU会算不过来??
给你算个数学题:2亿人次要在10天内买到火车票,每天放票2小时,服务器每秒要处理多少笔业务? 2778笔
仅算CPU性能,随便找个并发框架专题:Java并发框架剖析--Disruptor_51CTO.COM 每秒处理 六百万条数据。
2778 比 6000000 你还说是cpu不够。
”
徐峰与答主王强在原答案下的评论里争论的很多技术性的问题,内容过多,不一一摘录。
徐峰提到了caoz曹政曾经写过的一篇文章,其中的caoz的观点认为“2个人2周,40台服务器可以搞定”。
=======================================================================
楼主是个小菜,不懂这些东西,但是我个人感性地觉得,12306难则难矣,但是程度并没有到阿里、IBM等公司无法解决的地步。当然这个难度是从购票流畅度来说的,而有没有票供你买这个问题是技术无法解决的,1000张票10000个人要买,商业公司再牛也没法把票给你生出来。
我觉得之所以IBM、阿里等商业公司没能全部搀和到里面来,还是跟利益有很大的关系,蛋糕太大了,光两轮招标涉及金额就高达数亿,但是再大,也不会分给你们,能自己做的就自己做。阿里分到了一小块,同方分到了一块,IBM没分到。
我不想人云亦云,但是技术水平不够,所以也只能通过多找资料,多看技术文章来帮助判断了。
这是一条镜像帖。来源:北邮人论坛 / www-technology / #23070同步于 2014/1/10
该镜像源已超过 30 天没有更新,可能在源站已被删除。
WWWTechnology机器人发帖
风口浪尖上的12306
luminos
2014/1/10镜像同步23 回复
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
前排啊,好长啊,居然看完了啊
称赞LZ态度“我不想人云亦云,但是技术水平不够,所以也只能通过多找资料,多看技术文章来帮助判断了”
正是隔壁那个LZ缺乏的
【 在 chihiro2B 的大作中提到: 】
: 前排啊,好长啊,居然看完了啊
: 称赞LZ态度“我不想人云亦云,但是技术水平不够,所以也只能通过多找资料,多看技术文章来帮助判断了”
: 正是隔壁那个LZ缺乏的
: ...................
谬赞了~不过确实我觉得在真正做过digging之前不要大放厥词,人们通常无法很全面地了解一样事物。
【 在 anthozoan77 的大作中提到: 】
: 王强长文看完了。前面技术方面不了解,区域发展和教育资源不平衡想得确实挺长远的。
但是我感觉他那个资源不平衡的观点长远是长远,但是挺鸡汤的。为什么呢,因为这个问题是解决不了,也不需要技术人员去解决的。
区域发展和教育资源不平衡,是会向着更加平衡发展的,是一个长期的过程,这个过程决定了12306的压力减缓的速率。
同时能够缓解12306的压力的,还有各种交通方式的普及。比如美帝的航空就比火车旅行便宜、人们也更习惯自己开车来进行长途的出行。随着人们生活水平的提高,选择出行方式的改变、出行成本的进一步降低,也一定程度上能缓解购票难。
不平衡问题我认为是随着经济发展、人们生活方式改变,一定会得到缓解的(能不能彻底解决这个真不敢夸口),所以因此我觉得他这个话拿出来说就有点鸡汤了:对是对,可是无济于事啊。有点夹带私货的意思。