• 最新论文
  • 全市公安局长座谈会召开 李小龙故居被拆,李小龙会会长感到愤怒与失望 女司机“探出窗外吹风”被罚款记分,交警:有严重隐患 为什么 12306 时不时要崩那么一下? 为什么 12306 时不时要崩那么一下? 耕读文化传播基金助力学校美誉度提升 李小龙故居被拆,李小龙会会长感到愤怒与失望 办公游戏全能型选手,樱桃原厂轴体只卖399元,简评雷柏V808键盘 普陀的TA高颜值回归 美成网红地 聚焦中国环保展,天玾带您链接全球环保市场 合生创展重返赛场:囤地大王正在疯狂收割 美国海外学生申请数增长缓慢 女司机“探出窗外吹风”被罚款记分,交警:有严重隐患
  • 推荐论文
  • 全市公安局长座谈会召开 李小龙故居被拆,李小龙会会长感到愤怒与失望 女司机“探出窗外吹风”被罚款记分,交警:有严重隐患 为什么 12306 时不时要崩那么一下? 为什么 12306 时不时要崩那么一下? 耕读文化传播基金助力学校美誉度提升 李小龙故居被拆,李小龙会会长感到愤怒与失望 办公游戏全能型选手,樱桃原厂轴体只卖399元,简评雷柏V808键盘 普陀的TA高颜值回归 美成网红地 聚焦中国环保展,天玾带您链接全球环保市场 合生创展重返赛场:囤地大王正在疯狂收割 美国海外学生申请数增长缓慢 女司机“探出窗外吹风”被罚款记分,交警:有严重隐患
  • 热门标签
  • 日期归档
  • 为什么 12306 时不时要崩那么一下?

    来源:www.cecemca.com 发布时间:2020-01-26

    来源:不朽的跳跃作者:不朽的半佛

    1

    2019即将过去。你买了新年回家的火车票了吗?

    我知道你们很多人都没有买,我能感觉到你们内心的绝望。

    12306在几天前倒塌了,许多人在痛骂12306,许多人在我的公开号码后台问我为什么12306总是在每个转弯处倒塌,就像我的姑母一样。

    显然,这只是一个简单的售票软件。你是怎么让它变成这样的?数亿人在QQ微信上同时在线聊天,充满激情的互动和各种小视频。

    另一方面,有超过11亿人同时去购物。对他们来说砍伤手是没有问题的。为什么12306是穿着内裤的用户体验?

    让核心的半佛老师给你一些科普知识。

    12306业务压力和挑战是什么?

    他们当然不能忍受这么多你,谁能呢?

    尽管本文将包含大量核心技术术语,但我会尽最大努力使其尽可能简单。每个人都必须仔细听,做更多的笔记。新年期间在餐桌上吹牛的时候,都被王震炸了。别谢我。

    不是说你读完这篇文章就可以买票,而是买票实际上是形而上学。

    只要说,明白你是否会死。

    2

    许多人把12306和双11相比较,认为12306跟不上双11的这么多订单,显然是因为技术水平不到位。

    朋友,这从一开始就绕了一圈。12306的商业模式与双十一的商业模式有本质的不同。

    这种差异导致12306比双11更难~

    如果双11的难度是人类模式,12306几乎相当于地狱的第18层,很难再挖一个坑。

    1号,11号流量只是纯粹的网上业务,什么是纯粹的网上业务?所有用户在网页或应用程序上下单,整个数据实际上是闭环的。

    这导致了双11只是一个纯粹的在线交通问题,这个问题相对来说很容易解决,像一个简单的孩子一样容易被欺负。

    12306不是,12306不仅是APP和网站的朋友,离线售票处和离线机器中产生的所有交易也会影响整个12306数据系统。

    事实上,在现实生活中,很多买回家火车票的人,比如勤劳的农民和工人的朋友,都不在网上经营。他们只在脱机状态下排了一整夜的队,这很难,所以12306也必须照顾他们的感受,不能切断脱机业务。

    这导致12306本身是一个在线和离线共享数据的复杂业务,其复杂性比双溪高一个数量级。

    与纯双十一相比,12306就像一个饱受社会折磨的老兵。你永远不知道蛾子什么时候或什么时候会出现。

    这就像一个纯洁的男孩第一次和他的男朋友约会,害怕他不会来,害怕他会这样做。

    3

    秒,不管在线还是离线,毕竟这是欺负12306。让我们谈谈业务本身的规划和可预测性。

    仔细想想,你会发现双溪是一家规划和运营节点清晰的企业,而12306却不是。

    双十一活动不仅在11月11日举行,而且实际上是在一个月甚至几个月前开始的。许多用户已经支付了定金,许多企业已经锁定了他们的股票和销售,但最终的结算是在11月11日。

    这意味着双11面临着一个高度确定性的任务。只要有把握,交通流量就不会特别大。

    当你知道困难什么时候会发生,困难就不再是困难了。

    真正的困难在于无知。

    未知的是什么?12306未知。

    因为你永远不知道哪一天会有多少人去哪一个地方,一个从浙江回到山东的人会选择非常奇怪的路线和时间回家。

    他可以买浙江到山东,浙江到上海到山东,浙江到南京到山东,千岛湖到山东,浙江到北京到山东,浙江到黑龙江到山东,甚至浙江到广东飞回山东。只要他能回到山东,啊,我的葱。

    只要他能,他可以接受从1号、2号、3号、5号和10086号开始。

    这意味着没有人知道需求流量会有多突然,购买会有多复杂。

    我再举一个例子,你就会明白,微博不是很棒吗?每天都有这么多的流量和注意力。

    但为什么明星作弊、结婚或有负面消息时,微博会被挂断?是否没有技术力量或服务器资源不足?

    没有,因为交通突然,没有人知道它会突然爆炸,所以服务器挂断了。

    这和每个人都为泼水节做准备时一样,但是你倒了开水。

    谁能忍受这个?

    因此,建议所有明星在作弊前在微博上举报他们的不忠行为,这样他们就可以放心作弊,我们也可以放心吃瓜。

    他很好,我也是

    4

    第三,电子商务业务不是一次性完成所有流程的业务,但是12306必须一次性完成,这进一步增加了难度。

    让我们想想,电子商务购物实际上不是一次性的。

    典型的电子商务购物流程是浏览、与商家推价格、下订单、与商家推运费和快递、物流配送、买方收据以及与商家推售后服务。

    即使这些东西被消除了,电子商务购物过程中也有很多节点。

    整个过程需要24小时才能在第二天尽快到达。

    这意味着电子商务公司的数据压力没有预期的大,可以异步处理。它可以先完全完成付款,然后慢慢处理交货,再慢慢处理售后服务。

    就像你必须刷乙站烧开水一样,你可以先烧开水,在烧开水的过程中刷乙站。这就是异步的优势,它可以同时进行多任务处理,并且不影响用户的核心体验。

    下订单后3小时交货和5小时交货不会影响用户,容错率高。

    12306不同,卖票要马上完成。

    从下订单,到付款,再到锁票,一切都一蹴而就。没有缓冲时间。在我下订单两天后,没有什么能告诉我成功或失败。头部会向消费者爆炸。

    所以12306相当于没有这样的缓冲期。它需要面对所有的交通,并在尽可能短的时间内满足每个人的所有需求。所有的业务都需要在很短的时间内处理完,这意味着它将被立即填满。

    它也是1亿用户。在4个步骤中,电子商务公司可以在4个步骤中处理1亿个流量,并且每个步骤可以在数小时和数天内处理。

    12306一口气只能处理4亿人而不会减轻压力。

    我们都知道,即使是最强大的东西,如果被强行填满,也会崩溃。

    别想了,我说的是高速公路。

    第四,电子商务业务的库存管理相对简单,而12306是极其复杂的,如此复杂,我会简单地告诉你,你会很沮丧。

    想想看,作为一个电子商务平台,商品很难管理,但是它的总体规划却不能与固定产品的添加、删除、修改和检验相匹配。尽管有这么多,但付款将减少一个,增加或退回的数量将增加一个。至多,两个人同时拍摄最后一件产品的可能性很小。这都是小事。

    12306是完全不同的困难。这两者之间的区别可能相当于草履虫和涅墨西斯。

    让我给你举个例子。如果你是北京的学生,你的家在北京的南部,你必须回家过新年。

    选择从北京到南方的公共汽车。G65是一列高速列车。北京从珠海开始,到珠海结束。共有17个车站,总计10小时55分钟。

    这条路线有17站。你可以随意上下车。有多少种可能性?

    因为不可能只坐一站车,所以不可能从北京到北京。

    所以从1到16,有136种可能性。请注意,在电子商务中,添加、删除、修改和检查同一个场景只有4种可能。

    这种生产线的实时库存非常大。

    如果有人从北京到广州购买,那么所有相应的库存将减少1,但从广州到珠海的库存不会减少

    如果有人买了石家庄到漯河西,那么北京到保定,北京到石家庄不用变,漯河西到珠海,不用变。

    所有其他可能性都会改变,因为通过这两个车站的路线会受到影响。

    在实际业务中,这种变化将导致整个库存的实时变化和生产计划级别的数据变化。如果你对数据库了解一点,你就知道这种数据变化对资源消耗有多可怕。1GB电子表格运行查询可能会导致许多高性能计算机崩溃。早期的电子表格甚至被限制在65,000行,这是为了防止计算机崩溃。

    这种级别的数据,需要消耗的资源,都违反了广告法。

    那么为什么12306应该从晚上11点保持到早上?如果不是每天维护保护缓存,这样的数据库就已经完全完成了。

    12306每天与他的生命抗争。

    所以当你以后买票的时候,请破坏它,温柔一点。你不买票,你买工程师的头发。

    5

    第五,繁重的业务需要大量的判断。

    电子商务实际上不需要用户实名制,也不需要衡量用户的身份。只要你付款,除非你限制货物的购买,否则货物将被交付。然而,面对黄牛,也就是一场象征性的斗争,毕竟每个人都是出去卖钱的,也就不用再和钱打交道了。

    12306不同,12306是一个每个人都必须限制购买的模型。

    同一路线,同一时间,限量购买。

    以北京到珠海为例。12306不允许一个人在同一天购买大量从北京到珠海的机票。这对其他人不公平,所以必须限制出发时间和购买路线。

    然后问题出现了。如果要增加购买限制,必须缓存此人的当前购买信息和时间。此人的每笔交易都必须与其当前的计划重新匹配。

    这对数据资源的消耗是非常可怕的。

    而且,重量检查还有另一个实际问题,那就是12306本身允许不属于自己的人买票,也就是说,我可以为父母买票,我父母也可以为我买票,只要增加乘客,这意味着同一个人的信息可以由不同的购买者在不同的时间节点上增加,这带来了巨大的计算压力。

    这就像生活一样。这太难了。

    6th和12306比traffic,没有任何公司有资格。

    许多人真的认为双十一是交通高峰,但事实并非如此。12306是最可怕的交通高峰。

    为什么?因为电子商务商业模式不会导致用户重复点击,12306会一直被所有用户重复点击。

    例如,12月11日你购物时,买了它就离开了吗?买不到你就是骂了几句,然后就走了。

    用户的点击是有限的。即使你已经单身30年了,如果你放手,你能点击多快?

    你知道,对于系统来说,每次点击都是一次数据交换。

    12306面临更大的点击流。当你买票时,你会不断刷新操作。当您查询剩余票证时,您将运行所有数据库来帮助您同步当前剩余票证信息。该负载和计算量为天。

    现在,非常非常多的人在使用抓票软件。

    所谓的抢票软件是基于与机器不断读取12306数据接口的原理。这台机器的速度肯定比你30年的单手速度快几十倍,每秒刷几百次,一个人使用抢票软件会造成数千人一起刷票产生的数据压力。

    所有主要的抢票软件公司都有数千万用户,14亿人的流量足以消灭数百亿人。

    你知道12306的交通负荷有多重吗?

    12306,每个人都是鸣人,每天都很忙。

    6

    有些人会问,既然挑战如此之大,12306又如此之难,为什么不向国外先进技术学习呢?为什么不在服务器上投资更多呢?你为什么还在找借口?

    为什么12306不引进国外先进技术?

    答案其实很简单,在国外是无法涵盖的。

    早在2012年,12306年就有公开招标。没有预算限制。只要这个问题能够得到解决,世界顶级机构就开始竞标,但最终他们基本上放弃了。

    由于当时的技术环境,没有人能解决这个问题。

    许多外国技术确实是先进的,但历史上没有一个国家或公司接受过14亿人口的数百亿级交通的挑战。没有一家你能提及的世界顶级公司能够承受如此强劲的实时流量。

    其中一些流量更大,但就像电子商务一样,它们可以异步运行,而没有身份唯一性。路线库存没有如此复杂的计算。你也知道国外高速列车和地铁的垃圾量。他们从未遇到过我们遇到的任何问题。

    这是一件非常现实的事情。

    面对中国14亿人的旅游需求,每个人都是一样的菜。

    说到这里,我想到了我们行业的一个笑话。一位早期的脸书工程师回来加入阿里巴巴。离开之前,他说他会拯救阿里巴巴的数据系统。只有当他回来的时候,他才发现他在脸书上遇到的数据挑战与阿里巴巴相比几乎是幼儿园水平。

    就数据挑战而言,我们遇到的数据挑战无疑是世界上最强的挑战之一,而且大多数情况下没有挑战。

    那为什么不添加一个服务器呢?技术不够,所以需要硬件。

    Plus服务器面临三个核心问题。

    首先,添加服务器只会增加存储容量,不能解决数据库问题。和一个女人生孩子需要10个月,这并不意味着你可以在一个月内和10个女人生孩子。

    第二,如何驱动这些服务器?当阿里云在世界技术上领先时,它突破了同时驱动5000台服务器的限制,成为世界三大云之一。

    你知道,ariyun只面临双十一,而12306的挑战更可怕,需要同时驱动更多的服务器。这也是一个技术挑战。

    此外,阿里云确实参与了12306的建造。

    第三,成本。

    12306通常一年到头都表现良好,只有重大节日才会偶尔崩溃。为了应付一年中的几个重大假期,您购买了这么多高折旧率的服务器,这些服务器平时根本不使用。这是浪费钱。

    中国铁路本身就是一个巨大的损失,国家继续补贴它。在这种情况下,为了满足短期的需求,必须投入大量的成本。你不需要对此多说吗?

    如果你看隔壁的微博,你宁愿被流量淹没也不愿长时间维护大量的服务器。微博报告每年都是盈利的,金额是按十亿美元结算的。人们都采取这种态度。你知道12306有多难吗?

    这都是纳税人的钱。

    归根结底,购票问题的实质是供求关系。

    这个国家有很多人不得不在如此短的时间内完成如此多的旅行,这远远超出了铁路本身的承载能力。在供给少于需求的情况下,没有办法解决供求问题。

    每个人都想要很多东西。我们能做什么?

    增加资金并继续扩张?

    你必须知道许多路线只有在春节期间才会客满。通常它们是空的,而且会赔钱。为了满足少数短期旅行的人的需求,在已经过剩的路线上浪费大量金钱是不划算的。

    有了这些钱,你应该投资更多。

    12306这种基础设施自然会遭到斥责。如果你做得好,你就不会表扬它。如果你做得不好,你会被骂死的。这是基础设施的悲哀。每个人都有不合理的期望。

    此外,12306已经是一个超自然的操作,以如此小的预算达到目前的水平。

    不考虑资本成本和技术成本就责骂别人是不太合理的。

    你为什么不说在印度有别人卖火车票?

    友情链接: