 全球架构师峰会2019北京/量子计算/量子计算及其潜在应用&mdash量子计算及其潜在应用 吕定顺 华为中央研究院高级研究员 吕定顺 量子算法和软件研究 • 吕定顺博士,目前就职于华为2012实验室中 央研究院,毕业于清华大学交叉信息研究院 量子物理学专业,至今在量子计算、量子模 拟领域等已经有7年研究经验。博士期间,曾 在 Nature Physics,PRX,Nature Communication,PRL,PRA 等国际知名期刊 发表论文7篇,H index为7,论文累计引用 480次。目前专精并聚焦在量子软件和算法研 究领域。 • 量子计算的基本原理 • 量子计算机遇和挑战 • 华为量子计算的进展 • 量子计算的潜在应用 量子计算的基本原理:叠加 Dead Live Curiosity Kill the Cat 1/2( Dead + |????⟩) Huawei Confidential 5 量子计算的基本原理:纠缠 Particle 1 Particle Particle 2 1 2 ( ↓1 ↓2 + | ↑1⟩| ↑2⟩) 量子计算的并行性 Equals to classical computer operate 2Ntimes Exp: Decry a 400bits integer that used for RSA password,it will take 600k years with the best classical computer0 码力 | 34 页 | 5.57 MB | 1 年前3 全球架构师峰会2019北京/量子计算/量子计算及其潜在应用&mdash量子计算及其潜在应用 吕定顺 华为中央研究院高级研究员 吕定顺 量子算法和软件研究 • 吕定顺博士,目前就职于华为2012实验室中 央研究院,毕业于清华大学交叉信息研究院 量子物理学专业,至今在量子计算、量子模 拟领域等已经有7年研究经验。博士期间,曾 在 Nature Physics,PRX,Nature Communication,PRL,PRA 等国际知名期刊 发表论文7篇,H index为7,论文累计引用 480次。目前专精并聚焦在量子软件和算法研 究领域。 • 量子计算的基本原理 • 量子计算机遇和挑战 • 华为量子计算的进展 • 量子计算的潜在应用 量子计算的基本原理:叠加 Dead Live Curiosity Kill the Cat 1/2( Dead + |????⟩) Huawei Confidential 5 量子计算的基本原理:纠缠 Particle 1 Particle Particle 2 1 2 ( ↓1 ↓2 + | ↑1⟩| ↑2⟩) 量子计算的并行性 Equals to classical computer operate 2Ntimes Exp: Decry a 400bits integer that used for RSA password,it will take 600k years with the best classical computer0 码力 | 34 页 | 5.57 MB | 1 年前3
 海尔实时计算平台技术选型与实践海尔实时计算平台技术选型与实践 海尔电器-肖云 个人介绍 • 方正电子新媒体开发总监 • 中投视讯研发总监 • 海尔电器资深架构师 公司介绍 海尔 电器 日日顺 物流 贝业 物流 快递柜 。。。 跨境 电商 健康 水站 盛丰 物流 概要 • 实时计算平台背景 • 开源技术选型与实践 • 开源技术改造经验 背景-海尔大数据总体规划 实时计算平台框架 存 储 服 服 务 实时数据采集框架 实时计算框架 离线计算框架 数据可视化框架 数据产品1 数据产品2 数据产品N 可选的开源技术 Fluentd Flume Apollo Chukwa Sqoop DataX MySQLStreamer Canal Scribe ZeroMQ ActiveMQ Logstash RabbitMQ Jafka RabbitMQ Storm Manager •KafkaOffsetMonitor •Uber开源Kafka监控工具--Chaperone Kafka web监控管理界面 流式计算可选方案 仅流处理框架: • Storm • JStorm • Samza • Heron 混合框架: • Spark • Flink Core Storm or Storm Trident? Storm Trident: • Batch0 码力 | 41 页 | 3.21 MB | 1 年前3 海尔实时计算平台技术选型与实践海尔实时计算平台技术选型与实践 海尔电器-肖云 个人介绍 • 方正电子新媒体开发总监 • 中投视讯研发总监 • 海尔电器资深架构师 公司介绍 海尔 电器 日日顺 物流 贝业 物流 快递柜 。。。 跨境 电商 健康 水站 盛丰 物流 概要 • 实时计算平台背景 • 开源技术选型与实践 • 开源技术改造经验 背景-海尔大数据总体规划 实时计算平台框架 存 储 服 服 务 实时数据采集框架 实时计算框架 离线计算框架 数据可视化框架 数据产品1 数据产品2 数据产品N 可选的开源技术 Fluentd Flume Apollo Chukwa Sqoop DataX MySQLStreamer Canal Scribe ZeroMQ ActiveMQ Logstash RabbitMQ Jafka RabbitMQ Storm Manager •KafkaOffsetMonitor •Uber开源Kafka监控工具--Chaperone Kafka web监控管理界面 流式计算可选方案 仅流处理框架: • Storm • JStorm • Samza • Heron 混合框架: • Spark • Flink Core Storm or Storm Trident? Storm Trident: • Batch0 码力 | 41 页 | 3.21 MB | 1 年前3
 ServiceComb 开源微服务框架技术演进之路 巨震ServiceComb 开源微服务框架技术演进之路 巨震 软件工程师,华为 • 服务形态演进 • 基于SDK的传统微服务框架 • 何为Service Mesh • 演进:从SDK到Service Mesh • 拥抱Service Mesh开源生态 • 相关资源 #微服务 #Service Mesh #Sidecar #云原生 #SDK #数据面,控制面 通信:http、 RPC… • 服务治理 • 透明代理 • 通信:通用协议 • 服务治理 • Cloud Native部署 ServiceComb 一个基于SDK的“传统”微服务框架 Service Center service Java chassis Config Center service Go chassis Registration 支持多语言、传统微服务和新兴ServiceMesh微服务 架构混合场景部署 • 有大型成功商用案例 • 无商业强绑定,高自由度,企业自主可控 • 完整的生态栈,涵盖开源主流微服务运维和安全领域 • 低学习成本,有编程语言基础即可快速上手 华为开源 ServiceMesh方案 Mesher ServiceCenter Java-chassis ServiceComb0 码力 | 20 页 | 861.58 KB | 1 年前3 ServiceComb 开源微服务框架技术演进之路 巨震ServiceComb 开源微服务框架技术演进之路 巨震 软件工程师,华为 • 服务形态演进 • 基于SDK的传统微服务框架 • 何为Service Mesh • 演进:从SDK到Service Mesh • 拥抱Service Mesh开源生态 • 相关资源 #微服务 #Service Mesh #Sidecar #云原生 #SDK #数据面,控制面 通信:http、 RPC… • 服务治理 • 透明代理 • 通信:通用协议 • 服务治理 • Cloud Native部署 ServiceComb 一个基于SDK的“传统”微服务框架 Service Center service Java chassis Config Center service Go chassis Registration 支持多语言、传统微服务和新兴ServiceMesh微服务 架构混合场景部署 • 有大型成功商用案例 • 无商业强绑定,高自由度,企业自主可控 • 完整的生态栈,涵盖开源主流微服务运维和安全领域 • 低学习成本,有编程语言基础即可快速上手 华为开源 ServiceMesh方案 Mesher ServiceCenter Java-chassis ServiceComb0 码力 | 20 页 | 861.58 KB | 1 年前3
 QCon北京2018-《美团配送系统架构演进实践》-阴永俊快速 放心 省钱 销量 品牌 信赖 收入 稳定 安全 SLA更高 业务复杂性高 • 用户:花了钱却饿着肚子 • 商家:出了餐却无人配送 • 骑手:投入的时间、劳动却少赚了钱 • 多业务线的共性与差异:专送、代理、众包⋯ • 运营复杂度高:定义科学的订单供给与运力结构,并精准调控 • 安全管理:用户安全、商家安全、骑手安全 履约SLA要求高,重线下业务运营 配送系统的技术定位与思路 如何保证系统容量 • 如何提升计算能力 • 运营系统面临的问题 • 提升运营系统迭代效率 骑手网关 规模化阶段:核心领域细分 主数据平台 (核心模型) 账号权限 组织架构 核心数据模型 配送服务 配送运力 ⋯ 订单中心 (送什么) 品类 重量 支付状态 运单中心 (配送任务) 运单归属 配送状态 调度中心 (工程框架) 需求池 运力池 计算平台 策略平台 (算法策略) (算法策略) 算法框架 分析平台 经营规划 (目标) 盈亏 绩效 奖惩 业务管理 (过程) 运营工具 任务系统 骑手运营 (人) 任务 活动 等级 结算平台 (钱) 清算 结算 对账 接单网关 标准API 容灾 容灾 API管理 标准API APP运维 多链路 安全框架 管理工作台 HRM 移动办公 招募 IM 物料 薪资 培训0 码力 | 31 页 | 15.26 MB | 1 年前3 QCon北京2018-《美团配送系统架构演进实践》-阴永俊快速 放心 省钱 销量 品牌 信赖 收入 稳定 安全 SLA更高 业务复杂性高 • 用户:花了钱却饿着肚子 • 商家:出了餐却无人配送 • 骑手:投入的时间、劳动却少赚了钱 • 多业务线的共性与差异:专送、代理、众包⋯ • 运营复杂度高:定义科学的订单供给与运力结构,并精准调控 • 安全管理:用户安全、商家安全、骑手安全 履约SLA要求高,重线下业务运营 配送系统的技术定位与思路 如何保证系统容量 • 如何提升计算能力 • 运营系统面临的问题 • 提升运营系统迭代效率 骑手网关 规模化阶段:核心领域细分 主数据平台 (核心模型) 账号权限 组织架构 核心数据模型 配送服务 配送运力 ⋯ 订单中心 (送什么) 品类 重量 支付状态 运单中心 (配送任务) 运单归属 配送状态 调度中心 (工程框架) 需求池 运力池 计算平台 策略平台 (算法策略) (算法策略) 算法框架 分析平台 经营规划 (目标) 盈亏 绩效 奖惩 业务管理 (过程) 运营工具 任务系统 骑手运营 (人) 任务 活动 等级 结算平台 (钱) 清算 结算 对账 接单网关 标准API 容灾 容灾 API管理 标准API APP运维 多链路 安全框架 管理工作台 HRM 移动办公 招募 IM 物料 薪资 培训0 码力 | 31 页 | 15.26 MB | 1 年前3
 声明式自愈系统——高可用分布式系统的设计之道-王昕尽量避免复杂状态机,逻辑不要依赖无法监控的内部状 态 每个模块都可以在必要时优雅地降级服务 每个模块都可以在出错后自动恢复 假设任何命令都可能被任何调用对象拒绝,甚至返回错 误结果 声明式自愈系统的现有框架——Kubernetes 声明式自愈系统设计理念的回顾 统一接口 和对象模 型 自愈 能力 幂等操 作和状 态机 DS 和 RS Desired State 可重用部分 已完全实现 largely unaware that those languages are all describing state machines. Leslie Lamport TLA+试图用状态机而不是计算过程描述系统 更加关注系统的非正常输入 更加关注系统的稳定性可用性等特性而不是系统输出 分布式系统环境下没有单一的输入输出 TLA+是一种适合定义状态机的语言 定义一个状态机需要: 1. 定义所有可能的初始状态 定义所有可能的初始状态 2. 定义在特定状态下可能有哪些状态转换 一个程序可以用状态机描述 定义一个状态机需要: 1. 定义变量 2. 定义所有可能的初始状态 3. 定义在特定状态下可能有哪些状 态转换 计算 100/x 的程序: x = 100 / x; TLA+的应用场景——验证系统设计的正确性 TLA+工具会遍历所有可能的状态验证系统的正确性 分布式系统中有哪些异常情况需要模拟? 运行时可能出现的异常0 码力 | 44 页 | 2.47 MB | 1 年前3 声明式自愈系统——高可用分布式系统的设计之道-王昕尽量避免复杂状态机,逻辑不要依赖无法监控的内部状 态 每个模块都可以在必要时优雅地降级服务 每个模块都可以在出错后自动恢复 假设任何命令都可能被任何调用对象拒绝,甚至返回错 误结果 声明式自愈系统的现有框架——Kubernetes 声明式自愈系统设计理念的回顾 统一接口 和对象模 型 自愈 能力 幂等操 作和状 态机 DS 和 RS Desired State 可重用部分 已完全实现 largely unaware that those languages are all describing state machines. Leslie Lamport TLA+试图用状态机而不是计算过程描述系统 更加关注系统的非正常输入 更加关注系统的稳定性可用性等特性而不是系统输出 分布式系统环境下没有单一的输入输出 TLA+是一种适合定义状态机的语言 定义一个状态机需要: 1. 定义所有可能的初始状态 定义所有可能的初始状态 2. 定义在特定状态下可能有哪些状态转换 一个程序可以用状态机描述 定义一个状态机需要: 1. 定义变量 2. 定义所有可能的初始状态 3. 定义在特定状态下可能有哪些状 态转换 计算 100/x 的程序: x = 100 / x; TLA+的应用场景——验证系统设计的正确性 TLA+工具会遍历所有可能的状态验证系统的正确性 分布式系统中有哪些异常情况需要模拟? 运行时可能出现的异常0 码力 | 44 页 | 2.47 MB | 1 年前3
 QCon北京2018-业务高速发展下的互联网金融系统架构演变-张现双+张现双,宜人贷研发架构师,移动后台负责人,负责 移动后台的技术研发和系统架构设计,并随着业务增长持续 不断的进行性能优化和系统架构升级。 从事过研发、运维、dba等工作,在应对互联网系统流 量、并发、安全、一致性问题等方面有一些经验。 翻译出版专著:《可伸缩架构:面向增长应用的高可用》 大纲� 01 宜人贷发展历程 02 移动后台架构演进 03 流量应对策略 04 关于监控 包打天下 DB Server PC WEB 容错性、稳定性差 技术债迅速积累 代码安全带来挑战 初始,� 效率优先 成长,移动后台旁路追赶 DB主 Server PC WEB AND/IOS/H5/Open 静态站 网贷服务 借款流程 Cache集群 安全加密 网贷服务 CDN 支付结算 订单 DB从 批 处 理 系 统 活动 DB主 DB从 N多业务排队上线,瓶颈明显 热点场景频发,影响单体稳定 2pizza团队,系统单体制约 商城 核心服务 业务 网贷 保险 基金 商城 财富圈 健康财富 加密 验签 拦截 校验 安全 性能 并发 幂等 交易 缓存 基础服务 消息 监控 配置 报警 MIS OpenAPI 微信 财富圈 移动后台 商城MIS WAP … … Android/ios/h5/php/openApi0 码力 | 42 页 | 19.96 MB | 1 年前3 QCon北京2018-业务高速发展下的互联网金融系统架构演变-张现双+张现双,宜人贷研发架构师,移动后台负责人,负责 移动后台的技术研发和系统架构设计,并随着业务增长持续 不断的进行性能优化和系统架构升级。 从事过研发、运维、dba等工作,在应对互联网系统流 量、并发、安全、一致性问题等方面有一些经验。 翻译出版专著:《可伸缩架构:面向增长应用的高可用》 大纲� 01 宜人贷发展历程 02 移动后台架构演进 03 流量应对策略 04 关于监控 包打天下 DB Server PC WEB 容错性、稳定性差 技术债迅速积累 代码安全带来挑战 初始,� 效率优先 成长,移动后台旁路追赶 DB主 Server PC WEB AND/IOS/H5/Open 静态站 网贷服务 借款流程 Cache集群 安全加密 网贷服务 CDN 支付结算 订单 DB从 批 处 理 系 统 活动 DB主 DB从 N多业务排队上线,瓶颈明显 热点场景频发,影响单体稳定 2pizza团队,系统单体制约 商城 核心服务 业务 网贷 保险 基金 商城 财富圈 健康财富 加密 验签 拦截 校验 安全 性能 并发 幂等 交易 缓存 基础服务 消息 监控 配置 报警 MIS OpenAPI 微信 财富圈 移动后台 商城MIS WAP … … Android/ios/h5/php/openApi0 码力 | 42 页 | 19.96 MB | 1 年前3
 降级预案在同程艺龙的工程实践-王俊翔业界解决⽅方案 - HYSTRIX Netflix开源的一款容错框架,支持多种降级熔断技术 资源隔离 断路路器器 降级操作 请求合并 请求缓存 实践过程中遇到的问题 • 业务改造成本⾼高,代码耦合,维护成本增⾼高 • 固化策略略,需线下修改代码,测试,发布,线上应急策略略响应不不 友好 • ⽆无法⽀支撑多系统的复合指标计算,业务降级⽀支持不不友好 • ⼤大量量应⽤用各⾃自实现降 故障演练 业务保障管理理后台 应⽤用JVM进程 故障动态注⼊入 Attach 故障注⼊入 指标聚合查询 熔断降级计算(Flink) ⽇日志中⼼心 KAFKA 数据采集、计算、存储 指标(HBase) 指标明细(ES) 降级⽇日志(ES) ETL 指标计算(Flink) 脚本引擎 查 询 服 务 ⽇日志数据 指标(Redis) 业务异常数据快照(ES) 熔断降级通知 strategy center mysql sharding watch admin • 使⽤用ETCD实现注册中⼼心 • 简单 - Go语⾔言编写部署维护简单,定义良好的API • 安全 - SSL认证机制 • 快速 - ⽀支持上万次写⼊入操作 • 可信 - Raft算法保证强⼀一致性,Proxy反向代理理模式⽀支持 • 服务数据存储 • 应⽤用、服务元数据、状态数据,etcd、mysql双份存储0 码力 | 26 页 | 18.67 MB | 1 年前3 降级预案在同程艺龙的工程实践-王俊翔业界解决⽅方案 - HYSTRIX Netflix开源的一款容错框架,支持多种降级熔断技术 资源隔离 断路路器器 降级操作 请求合并 请求缓存 实践过程中遇到的问题 • 业务改造成本⾼高,代码耦合,维护成本增⾼高 • 固化策略略,需线下修改代码,测试,发布,线上应急策略略响应不不 友好 • ⽆无法⽀支撑多系统的复合指标计算,业务降级⽀支持不不友好 • ⼤大量量应⽤用各⾃自实现降 故障演练 业务保障管理理后台 应⽤用JVM进程 故障动态注⼊入 Attach 故障注⼊入 指标聚合查询 熔断降级计算(Flink) ⽇日志中⼼心 KAFKA 数据采集、计算、存储 指标(HBase) 指标明细(ES) 降级⽇日志(ES) ETL 指标计算(Flink) 脚本引擎 查 询 服 务 ⽇日志数据 指标(Redis) 业务异常数据快照(ES) 熔断降级通知 strategy center mysql sharding watch admin • 使⽤用ETCD实现注册中⼼心 • 简单 - Go语⾔言编写部署维护简单,定义良好的API • 安全 - SSL认证机制 • 快速 - ⽀支持上万次写⼊入操作 • 可信 - Raft算法保证强⼀一致性,Proxy反向代理理模式⽀支持 • 服务数据存储 • 应⽤用、服务元数据、状态数据,etcd、mysql双份存储0 码力 | 26 页 | 18.67 MB | 1 年前3
 刘道平-从0到1,移动政务应用小程序系统架构演化APP消息,打扰多,用户遗漏概率大 拓展性 程序包小,可以关联调转 无大小限制,调转较难 智能化服务能力 微信自带组件,对接更容易 需根据场景单独对接,如人脸识别、支付等 产品自主性 需依托微信平台 完全自主可控 数据安全性 微信前端数据通过HTTPS传输 全业务流程数据传输监控 使用路径 微信端二级应用 一级入口 从技术的角度来比对,小程序和APP各具优势:小程序具备轻量级、跨平台、成本低、功能强和易传播的特征; 依托公安部门互联网可信身份认证体系 • 用户登录后,业务系统不再要求用户登录 9、前端开发 -- 封装公共组件 ,磨刀不误砍柴工 1、封装DGD-SDK公共组件 2、合包工具 3、Taro框架预研 10、API网关 – 限流保护已有系统、提升访问安全性 • 1.业务应用A 向网关申请接入,网关分配paasid、token给业务应用; • 2.业务应用A 使用paasid、token,接入网关,网关进行鉴权;业务 发布服务,或申请授权访问其他服务; • 3.前端小程序向网关请求业务应用A 的接口服务,网关请求业务应用A提供的服务,返回给前端小程序。 11、后台服务 -- 构建分布式微服务框架 1.采用etcd 构建微服务框架 etcd是一个分布式的 、一致的key-value存储,主要用途是共享配置和服务发现。Etcd已经在很多分布式系统中得 到广泛的使用。Etcd采用raft协议,来保证一致性。 20 码力 | 35 页 | 15.60 MB | 1 年前3 刘道平-从0到1,移动政务应用小程序系统架构演化APP消息,打扰多,用户遗漏概率大 拓展性 程序包小,可以关联调转 无大小限制,调转较难 智能化服务能力 微信自带组件,对接更容易 需根据场景单独对接,如人脸识别、支付等 产品自主性 需依托微信平台 完全自主可控 数据安全性 微信前端数据通过HTTPS传输 全业务流程数据传输监控 使用路径 微信端二级应用 一级入口 从技术的角度来比对,小程序和APP各具优势:小程序具备轻量级、跨平台、成本低、功能强和易传播的特征; 依托公安部门互联网可信身份认证体系 • 用户登录后,业务系统不再要求用户登录 9、前端开发 -- 封装公共组件 ,磨刀不误砍柴工 1、封装DGD-SDK公共组件 2、合包工具 3、Taro框架预研 10、API网关 – 限流保护已有系统、提升访问安全性 • 1.业务应用A 向网关申请接入,网关分配paasid、token给业务应用; • 2.业务应用A 使用paasid、token,接入网关,网关进行鉴权;业务 发布服务,或申请授权访问其他服务; • 3.前端小程序向网关请求业务应用A 的接口服务,网关请求业务应用A提供的服务,返回给前端小程序。 11、后台服务 -- 构建分布式微服务框架 1.采用etcd 构建微服务框架 etcd是一个分布式的 、一致的key-value存储,主要用途是共享配置和服务发现。Etcd已经在很多分布式系统中得 到广泛的使用。Etcd采用raft协议,来保证一致性。 20 码力 | 35 页 | 15.60 MB | 1 年前3
 唯品会调度系统的前世今生com/vipshop/Saturn 体系中的定位 服务化框OSP 开发框架Venus 唯品会基础架构体系 消息队列 VMS 全链路监控 Mercury 统一日志平台 dragonfly 任务调度平台 Saturn 统一配置中心 CfgCenter 统一鉴权中心 AuthCenter 服务网关 Janus 安全管理平台 Salus 有女初张成 唯品会弹性调度系统的架构与功 Observe r ob-saturn-zk-* 2台 3台 x台 调度器集群 接入域-B 执行结点 作业实现 功能地图 01 02 03 多种作业类型与 作业模式 资源动态平衡 框架与业务隔离 三大功能特性 Shell作业 消息作业* JAVA作业 分布式与本 地作业模式 • 完美兼容现有PHP的作业,可无缝迁移,成本最低 • 提供多种业务开发模式,满足不同的业务需求 平衡负载 资源利用 • 灵活的运维配置与部署 • 高效资源利用 • 简便的管理 人工指定 自动平衡 资源平衡调度算法 框架代码 与业务代 码隔离 集中化动 态增加与 删除作业 • 简化开发,避免冲突,业务无侵入 • 易于发布与维护 • 框架升级与业务脱离 框架与业务隔离 Shell作业 Java/消息作业 Saturn Executor PHP脚本 Python脚本 System0 码力 | 58 页 | 5.40 MB | 1 年前3 唯品会调度系统的前世今生com/vipshop/Saturn 体系中的定位 服务化框OSP 开发框架Venus 唯品会基础架构体系 消息队列 VMS 全链路监控 Mercury 统一日志平台 dragonfly 任务调度平台 Saturn 统一配置中心 CfgCenter 统一鉴权中心 AuthCenter 服务网关 Janus 安全管理平台 Salus 有女初张成 唯品会弹性调度系统的架构与功 Observe r ob-saturn-zk-* 2台 3台 x台 调度器集群 接入域-B 执行结点 作业实现 功能地图 01 02 03 多种作业类型与 作业模式 资源动态平衡 框架与业务隔离 三大功能特性 Shell作业 消息作业* JAVA作业 分布式与本 地作业模式 • 完美兼容现有PHP的作业,可无缝迁移,成本最低 • 提供多种业务开发模式,满足不同的业务需求 平衡负载 资源利用 • 灵活的运维配置与部署 • 高效资源利用 • 简便的管理 人工指定 自动平衡 资源平衡调度算法 框架代码 与业务代 码隔离 集中化动 态增加与 删除作业 • 简化开发,避免冲突,业务无侵入 • 易于发布与维护 • 框架升级与业务脱离 框架与业务隔离 Shell作业 Java/消息作业 Saturn Executor PHP脚本 Python脚本 System0 码力 | 58 页 | 5.40 MB | 1 年前3
 高性能高可用机票实时搜索系统⾼性能⾼可⽤机票实时搜索系统 去哪⼉⺴ 梁启康 议题 系统诉求 海海量量数据 设计思路路 搜索框架 报价引擎 待解问题 系统诉求 • 全⽹网价最低 • 航线报价最全 • 实时性最好 • 产品最丰富 • 预定最流畅 ⾯面临问题 航班舱位时刻变动 供应商规则调整密集 航司政策各有不不同 供应商的office权限不不⼀一致 运价规则变化繁多 GDS数据成本不不菲 • 每秒计算产品数:搜索qps * 航班数 * 供应商个数 * 产品个数 = 1500万 + 设计思路路 • 最理理想的⽅方式 • 所有的报价都实时计算,填充好 • ⼀一个巨⼤大的哈希表 • 响应所有渠道价格变动进⾏行行计算 • 快 • 0 变价 设计思路路 CAP BASE 理理论 按需计算 消息驱动 异步 分布式 分级缓存 ⽆无状态 搜索框架 PriceMerger 供应商直连 旗舰店 CacheManager 抓取 App WWW Touch 分销 Cache Redis MQ MQ 航班数据 运价数据 应⽤用层 聚合层 报价源 基础数据 搜索框架 遇到问题 解决⽅方案 • 报价数量量多,内存问题 • 报价源多,不不稳定 • 响应时间要求苛刻 • 搜索条件有热点 • 缓存报价不不准 • 尽量量⽤用原⽣生数据类型,编码 • 回数⽐比例例,异步搜索更更新0 码力 | 26 页 | 1.94 MB | 1 年前3 高性能高可用机票实时搜索系统⾼性能⾼可⽤机票实时搜索系统 去哪⼉⺴ 梁启康 议题 系统诉求 海海量量数据 设计思路路 搜索框架 报价引擎 待解问题 系统诉求 • 全⽹网价最低 • 航线报价最全 • 实时性最好 • 产品最丰富 • 预定最流畅 ⾯面临问题 航班舱位时刻变动 供应商规则调整密集 航司政策各有不不同 供应商的office权限不不⼀一致 运价规则变化繁多 GDS数据成本不不菲 • 每秒计算产品数:搜索qps * 航班数 * 供应商个数 * 产品个数 = 1500万 + 设计思路路 • 最理理想的⽅方式 • 所有的报价都实时计算,填充好 • ⼀一个巨⼤大的哈希表 • 响应所有渠道价格变动进⾏行行计算 • 快 • 0 变价 设计思路路 CAP BASE 理理论 按需计算 消息驱动 异步 分布式 分级缓存 ⽆无状态 搜索框架 PriceMerger 供应商直连 旗舰店 CacheManager 抓取 App WWW Touch 分销 Cache Redis MQ MQ 航班数据 运价数据 应⽤用层 聚合层 报价源 基础数据 搜索框架 遇到问题 解决⽅方案 • 报价数量量多,内存问题 • 报价源多,不不稳定 • 响应时间要求苛刻 • 搜索条件有热点 • 缓存报价不不准 • 尽量量⽤用原⽣生数据类型,编码 • 回数⽐比例例,异步搜索更更新0 码力 | 26 页 | 1.94 MB | 1 年前3
共 29 条
- 1
- 2
- 3













