写在开头的话:技术总是在不断质疑中进步(改编自:质疑是科学研究不断前进的动力)

原文地址:

1、http://blog.itpub.net/69923331/viewspace-2662964/

2、https://zhuanlan.zhihu.com/p/91934639

LVS+Nginx 这套架构是普遍流行的,成熟的架构,变种有:F5+Nginx, 个人觉得F5+Nginx比LVS+Nginx好,因为硬件分流比软件更稳定,性能更高。其实LVS+Nginx是我们这种小成本网站用的。

订单流程的核心是数据库的性能,12306用的是内存数据库,性能应该已经提升到了极致。

架构图中前置了MQ消息队列,这应该是削峰作用,防止数据库崩溃的手段,日常应该没有太多作用;MQ是异步的,会产生数据库的事务问题,因此架构里面着重要解释如何解决一致性的问题。

文中解释MQ属于业务定制的缓存,也就是MQ会汇总请求,统一进行订单处理,只把结果写入数据库中。因此MQ属于一个超级业务缓存,只把结果存入数据库中,这样就解决了一致性的问题。同时文中还进行了延申说明,MQ是可以并行部署的,没有性能问题。

现在看起来这个架构是一套高性能的成熟的架构,除了一些微小的无关痛痒的瑕疵。

文中并没有对查票业务进行说明,我个人认为查票业务应该比这个部分重要,理由有两点:1、大部分用户会反复查票,查票的性能要求更高,更能给用户好的体验;2、中介机构的刷票业务才是影响性能的重点,也是常常造成崩溃的原因。

查票里面的难点是需要进行路线计算,这个过程可以分为两个步骤:首先查询出路线,其次需要和座位数量匹配,筛选出有效的路线。从目前使用看来,这个部分性能还不够,应该是业务的分离程度不够的原因。

最后总结:这个架构里面不清晰的两个地方,MQ和查票两个模块,大部分业务都在这里,应该着重设计细化的地方。个人觉得查票是非常影响用户体验的,官方应该继续努力把这个模块优化好。

查票业务有一个核心就是状态传递是单向的,不需要设计锁来实现状态的更新,因此查票业务是可以做到性能极高,再配合IP反刷票机制,系统不会崩溃。

12306架构的延伸解读相关推荐

  1. 研发部 架构师 定义解读

    研发部的职位定义,为研发部的每一位同事的目标提供指引,帮助每一个人更快的成长,更好的工作,更快的找到自己的位置 研发部 架构师 定义解读 架构师,是研发部每一位同志的理想,也是我的理想,不仅因为它的职 ...

  2. 技术风向标 | 云原生技术架构成熟度模型解读

    从"上云"到"云上"原生,云原生提供了最优用云路径,云原生的技术价值已被广泛认可.当前行业用户全面转型云原生已是大势所趋,用户侧云原生平台建设和应用云原生化改造 ...

  3. YOUChain 首席架构师 何畅彬:YOUChain技术白皮书首次亮相,首席架构师深度解读

    今天"链客Talk"邀请YOUChain首席架构师何畅彬来到链客直播间,和大家一起探讨YOUChain技术白皮书首次亮相,首席架构师深度解读这一话题. 何畅彬 :YOUChain ...

  4. 如果我是12306架构师

    12306,因为系统问题,成了IT业界内大家茶余饭后经常谈论的话题. 先分享一个真实故事,我同事看了12306这个网站,他说,这个网站做下来只要5万,我反驳,被他嘲笑.笑话终归笑话,没有讽刺铁道部,以 ...

  5. 12306架构到底是不是国内最牛逼的架构

    12306 抢票,极限并发带来的思考 虽然现在大多数情况下都能订到票,但是放票瞬间即无票的场景,相信大家都深有体会. 尤其是春节期间,大家不仅使用 12306,还会考虑"智行"和其 ...

  6. 细思极恐,原来12306架构这么牛逼

    作者:绘你一世倾城 https://juejin.im/post/5d84e21f6fb9a06ac8248149 每到节假日期间,一二线城市返乡.外出游玩的人们几乎都面临着一个问题:抢火车票! 12 ...

  7. 系统练级攻略 | 京东架构师倾情解读

    刘慎宝:京东财务研发部架构师,主要负责财务研发部的基础组件和各系统技术方案支持,10+年互联网研发专家. 2010年入职京东并历经几乎所有618和双11挑战.精通高并发服务搭建和业务建模,曾多次主导京 ...

  8. 如何用架构师思维解读区块链技术?

    阿里妹导读:很多童鞋反馈,区块链技术有点绕,有点晦涩,大都是一知半解,理解不够通彻.但在阿里技术专家郑吉看来,区块链特别是比特币本身,并没有使用高大上复杂的新技术,只是对现有技术的组合.其天才的地方体 ...

  9. 以太网的分层架构_【新能源汽车专题】智能车时代的核心,电子架构系统深度解读,国内8股进入全球产业链(名单)...

    一,汽车 E/E 架构 汽车电子电气架构(又称 E/E 架构)是指整车电子电气系统的总布置方案,即将汽车里的各类传感器.处理器.线束连接.电子电气分配系统和软硬件整合在一起,以实现整车的功能.运算.动 ...

最新文章

  1. 关于float的说明
  2. 【高并发】在高并发环境下该如何构建应用级缓存?
  3. 使用苹果版博客编辑器发布的文章
  4. 自考进行时--2018.10.21
  5. 四边形可以分为几类_学习知识:四边形有几种类型
  6. C 语言的实际运用 ---150809124
  7. 【☆】javascript数据类型拾遗
  8. Apache ab测试工具使用方法(无参、get传参、post传参)
  9. html按钮冻结,Vue js按钮冻结dom
  10. python string转int_我用Python搞资源 [ 02 ]
  11. [转载] 华中科技大学期刊分类办法
  12. python装饰器 @ time模块示例(七分钟读懂)
  13. Jenkins任务优先分配到原来的执行节点上
  14. [Centos 7]MYSQL 安装及登录问题
  15. 【React 】基于Antd Design的CheckBox多选框组件封装
  16. vue 移动端使用日期插件datepicker.js
  17. 论文阅读笔记:Neural Belief Tracker: Data-Driven Dialogue State Tracking
  18. ieda-自动引入局部变量(introduce local variable)快捷键
  19. php采集今日头条出现问题,使用php蓝天采集抓取今日头条ajax的文章内容
  20. chrome浏览器不支持video标签,不能自动播放。

热门文章

  1. 计算海洋声学---射线理论注解
  2. vs2019安装包显示网络未链接_PR 2020安装包下载及安装教程
  3. 2022年全球市场汽车挡风玻璃升降器总体规模、主要生产商、主要地区、产品和应用细分研究报告
  4. 遗传算法:最全的序列整数编码交叉算子 permutation encoding integer encoding crossover operator
  5. Succi -通过五角星学习python变量
  6. Java实现一个简单的随机点名器
  7. 一家中高档女鞋店,如何利用资源整合,让他的生意生意异常火爆!
  8. SkeyeVSS视频共享融合赋能平台技术方案之AI视频智能分析中台子系统架构设计
  9. 永磁同步电机偏差解耦与电流前馈解耦控制比较
  10. HTML5 单个或者多个Video标签视频加载第一帧方法(poster属性)