12306 真的很拉跨吗?春运是对它最大的误解!

春节降至,大家都抢到火车票了吗?马上就要迎来春节,是不是都在吐槽 12306 的种种不好,它真的有这么拉跨吗?

其实不然,每到各种节假日,都是对 12306 最大的误解!

特别是春运,它要面对的是一个世界级难题——春运期间内将 3 亿多客流人次高效地将每个人从起始地送达目的地,这是一个运筹学的问题,也是全球最难的科技挑战。

据统计,在 2020 年春运期间,12306 在网络高峰日的点击量飙升至惊人的 1495 亿次。这个数字意味着,平均每个中国人在这一天的点击量高达 100 次。相比之下,全球访问量最大的搜索引擎网站谷歌的日访问量仅为 56 亿次。而当我们再与双十一流量爆棚的淘宝进行对比时,情况更是悬殊。据数据显示,2019 年淘宝的日活跃用户为 4.76 亿。相当于每个人要再淘宝上点击 300 多次才能赶上 12306 的峰值点击量水平。而根据报导显示,2023 年春运全社会人员流动量约 47.33 亿人次,铁路春运累计发送旅客 3.48 亿人次,同比增加 9473 万人次。

曾经有过一群工科男在“光谷社区”上对天猫和 12306 的算法复杂度作比较,比如将票比作商品,订单处理余货验证的复杂度上,天猫是 1,12306 则是 300。

蜕变之路

很多人都还记得 12306 初次上线时遭遇的种种困境。

2010 年春运,12306 网站首次开通并试运行,但是由于超高的流量,网站出现多次瘫痪,无法正常运行,这也导致许多人在那一年都因为没有抢到票而耽误了回家的进程。

三年后,12306 手机 APP 上线,尽管下载量巨大,但仍然因为各种技术问题备受诟病,尤其是一到春运期间,那些增加的服务器后台就又像失灵一般,说崩溃就崩溃。12306 所使用的传统系统架构,难以撑起每年返乡游子心中的热忱。

这个时候那个男人来了!

马云在 2015 年参加瑞士达沃斯论坛时曾说道:“12306 的这套系统,5 年来每年春运期间都会崩溃。我告诉阿里的年轻人,去支援他们,不收一分钱。因为我不想看到农民工兄弟买不到火车票,为了这么多人在下雪的晚上能够不用等就可以再网上买到票。”

至此,阿里云开始向 12306 提供免费的云技术支持。

云计算的加入

12306 通过算法的改进、云端技术的长足发展、大数据的加持、人工智能的突破,也就是日前 12306 技术部主任单杏花所公布的,12306 售票系统已成为全球最大的票务交易系统,研发的“分布式内存计算余票技术”“异步交易排队系统”“售取分离、读写分离”核心系统架构等多种技术,硬是做到了在一天 1500 亿次暴击下而不崩溃。

自 2014 年起,12306 开始将其高流量查询业务转移至“云端”。到 2016 年,12306 进一步扩大了云端容量,使得几乎所有的查询访问都在云端进行。12306 采用公有云与私有云相结合的模式,显著提升了数据处理能力。在平日,国铁集团和铁科院各自拥有一个数据中心,利用自有资源提供售票服务。而在节假日等高峰期,出于经济性等方面的考虑,采用公有与私有相结合的混合云技术,以提高服务能力。12306 的架构具有弹性与扩展性,核心数据与扩展功能独立,确保稳定高效服务。

从 2012 年的 120 万张/天的售票量到 2020 年的 1443 万张的售票量,从人工检票到刷脸进站,从纸质版火车票到刷身份证进站,从以前要彻夜排队车站买车票到如今网上手机购票,其实是一个人类技术质的飞跃,说一声 12306 是世界最牛的票务网站都不过分。

虽然时不时吐槽一下 12306 的卡顿,成了网友们的新年俗,但那是 12306 另一个值得骄傲的点,因为 12306 已经接近了人类现有技术极限,任何一个国家都无可供借鉴的经验,任何一个系统无现成方案可采用。

图片跟相关资料均来自网络,如有侵权,请联系删除

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/358380.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

多个微信号难管理?

很多客户都遇到了这几个问题: 1、公司分配给员工有很多个微信账号,但是管理起来很难? 2、多个微信号要不来回切换登录,要不需要挂在多台手机了? 3、每个号每天都需要发朋友圈,工作量大?有时还…

GP232RL国产USB串口如何兼容FT232RL开发资料

GP232RL是最新加入 ftdi 系列 usb 接口集成电路设备的设备。 232r是一个 usb 到串行 uart 接口,带有可选的时钟发生器输出,以及新的 ftdichip-idTM 安全加密器特性。此外,还提供了异步和同步位崩接口模式。 通过将外部 eeprom、时钟电路和 …

Java API 操作 HDFS

Java API 操作HDFS一般有两种方式: 使用HDFS客户端配置文件自动配置 Java 代码中配置 一 使用HDFS客户端配置 1.1 下载HDFS客户端配置 1.2 创建Maven项目 创建Maven项目,将下载的客户端配置文件 core-site.xml、hdfs-site.xml 放入resources目录下&…

用AI工具一键生成原创文案的方法

一键生成原创文案对于文案工作者来说它是一种高效率创作文案内容的方法。文案工作者知道创作文案是一件消耗精力和时间的事情,遇到没有创作灵感,想要写一篇高质量的文案内容简直难上加难,因此,互联网上出现了一键生成原创文案的方…

冷知识:COS上传文件时可以同步获取文件信息

背景介绍 本文将介绍如何在上传文件到 COS 时同步获取文件信息,如图片的宽高、格式等。 目前,可以通过 COS 上传接口,如 PUT Object、CompleteMultipartUploads 等将文件存储至 COS 存储桶中,我们针对以下三种场景提供上传时同步…

HubSpot社交媒体影响力怎么样?

HubSpot是一家在数字营销和销售领域非常知名的公司,以其全面的营销、销售和客户服务软件而闻名。然而,关于HubSpot在社交媒体上的具体影响力,这是一个动态的情况,因为社交媒体的影响力可能受到多种因素的影响,包括社交…

如何处理QT 代码复制到新机器无法正确打开和编译?

例如你在文件夹 d:\projects 下创建的项目名称为 hello,这时会在 d:\projects 下创建两个文件夹 d:\projects\hello 和 d:\projects\build-hello-Desktop_Qt_6_6_1_MinGW_64_bit-Debug。其中,第二个文件夹保存了编译器等工具软件的路径设置。 第二个文件…

ubuntu 22安装配置并好安全加固后,普通用户一直登录不上

现象 ubuntu 22安装配置并好安全加固后,普通用户一直登录不上 排查报错 查看日志/var/log/auth.log发现报错 Jan 30 15:49:57 aiv-O-E-M sshd[62570]: PAM unable to dlopen(pam_tally2.so): /lib/security/pam_tally2.so: cannot open shared object file: No …

C语言 | 求最大/小值小技巧:fmax、fmin函数

如果你只是因为不想用C语言手写max、min函数,就直接去用iostream中的max、min函数的话,这篇文章可能会有些许帮助。 😇 fmax、fmin函数用于确定两个指定值的较大/较小值。 头文件 math.h(或者cmath)。 定义 double …

【Python笔记-设计模式】单例模式

一、说明 单例是一种创建型设计模式,能够保证一个类只有一个实例, 并提供一个访问该实例的全局节点。 (一) 解决问题 维护共享资源(数据库或文件)的访问权限,避免多个实例覆盖同一变量,引发程序崩溃。 …

部署PXE高效批量网络装机

部署PXE高效批量网络装机 因在Cisco3850核心交换机中已开启DHCP 服务,因此不需要在配置DHCP服务。如果您的网络环境中也已有DHCP服务,也不用再配置DHCP服务了,直接部署PXE相关服务即可。 找一台linux系统的服务器,这本次试验用的是…

什么是零知识证明?

Web3 的核心原则之一——透明度,也可能是其最大的缺点之一。没有人希望他们的所有在线活动(从金融交易到个人身份数据)都可供任何人公开查看。为了使区块链能够扩展并变得更容易访问,隐私必须成为首要任务。 零知识证明能够改变我…

Codeforces Round 894 (Div. 3)

Gift Carpet(Problem - A - Codeforces) 题目大意:有一块儿地毯,上面有n行m列的字符,如果从左往右一列一列的读,可以读到“vika”,那么就输出yes,否则输出no。 思路:这…

【RuoYi-Vue-Plus学习】项目初始化时将sql导入数据库出现Finished with error解决方法之一

将sql导入数据库出现Finished with error,文末是最终解决方法。 问题描述:sql导入出现Finished with error 解决方法探索过程: 1)参考链接2和3,在mysql的bin目录下输入以下指令连接数据库 mysql -h localhost -u ro…

第25讲:顺序表专题

1.什么是数据结构 2.顺序表概念及结构 3.顺序表分类 4.实现动态顺序表 1.什么是数据结构 数据结构是计算机存储、组织数据的方式。可以用来完成通讯录项目。 2.顺序表概念及结构 2.1线性表 线性表是n个具有相同特性的数据元素的有限序列 常见的线性表:顺序表…

智能监控系统EasyCVR设备录像无法下载是什么原因?该如何解决?

视频监控TSINGSEE青犀视频平台EasyCVR能在复杂的网络环境中,将分散的各类视频资源进行统一汇聚、整合、集中管理,在视频监控播放上,TSINGSEE青犀视频安防监控汇聚平台可支持1、4、9、16个画面窗口播放,可同时播放多路视频流&#…

【React教程】(2) React之JSX入门与列表渲染、条件渲染详细代码示例

目录 JSX环境配置基本语法规则在 JSX 中嵌入 JavaScript 表达式在 JavaScript 表达式中嵌入 JSXJSX 中的节点属性声明子节点JSX 自动阻止注入攻击在 JSX 中使用注释JSX 原理列表循环DOM Elements 列表渲染语法高亮 条件渲染示例1:示例2:示例3&#xff08…

递归方法的理解,什么时候递,什么时候归

简单总结一下递归。递归就是在运行的过程中调用自己。递归需要有一个出口,如果无限递归是没有意义的,而且递归到一定程度,程序就会由于栈内存溢出导致程序报错。 我们先来看段代码:建议大家先思考这个代码在控制台输出的结果是什…

性能测试+Jmeter介绍

文章目录 什么是性能测试?性能测试的目的性能测试分类一般性能测试负载测试压力测试大数据量测试配置测试稳定性测试 性能测试术语虚拟用户并发及并发用户数响应时间每秒事务数吞吐量、吞吐率点击率性能计数器资源利用率 性能测试流程测试计划阶段测试设计阶段测试开发阶段测试…

SQL中实现行列转换

目录 方法一:sum case when 方法二:sum if 方法三:pivot 现在有一张表class_gender,内容如下: classgender一年级女一年级女一年级男一年级男二年级女二年级女二年级男 现在我们要根据上表,统计得到下…