分布式异地多活架构实践之路讯飞输入法异地多活架构实践之路 凌 军 自我介绍 • 凌军 • 2010年加入科大讯飞 • 讯飞输入法、灵犀语音助手等产品服务端架构负责人 • 科大讯飞消费者BG基础平台架构负责人 产品介绍 • 稳居国内输入法第一阵营 • 2010-10~至今 • 4亿用户 • 1.1亿月活 来自:中国科学院《互联网周刊》 大纲 • 产品发展中遇到的问题 • 异地多活存在哪些挑战 • • 讯飞输入法异地多活解决方案 • 实际应用效果 • 未来规划 单机房遇到的问题 可用性低 响应时间慢 系统扩容难 可用性低 响应时间慢 系统扩容难 大纲 • 产品发展中遇到的问题 • 异地多活存在哪些技术挑战 • 讯飞输入法解决方案 • 实际应用效果 • 后续规划 技术挑战 几十毫秒的延迟; 跨机房性能较慢 机房天然延迟 专线费用高; 专线不稳定 跨机房专线问题 • 产品发展中遇到的问题 • 异地多活存在哪些技术挑战 • 讯飞输入法异地多活解决方案 • 实际应用效果 • 未来规划 业务特点分析 业务分类 业务举例 业务特点 场景归类 核心业务 皮肤、表情、资源、广告、应用墙译等 读多写少 主从模式 (单点写,多点读) 用户个性化数据同步、账号等 读写均衡 多主模式 (多点读写) 分布式日志收集等 写多读少 汇聚模式 (多点写,单点读)0 码力 | 36 页 | 1.66 MB | 1 年前3
ServiceComb 开源微服务框架技术演进之路 巨震proxy proxy proxy • 单体应用 • 业务模块划分 • 程序模块间调用 • 独立应用模块 • 通信:协议、队列 • SDK引用 • 通信:http、 RPC… • 服务治理 • 透明代理 • 通信:通用协议 • 服务治理 • Cloud Native部署 ServiceComb 一个基于SDK的“传统”微服务框架 Service 编程模型 运行模型 通信模型 • Spring MVC • JAX-RS • POJO 服务发现 限流 熔断 负载均衡 跟踪 … OpenAPI • 序列化 • 传输协议 Service Mesh • A service mesh is a dedicated infrastructure layer for handling service-to-service Service Discovery Instance Cache Management Service Center Istio Kubernetes Service Center 多协议支持 HTTP gRPC Other protocols invocation Handler Chain Rate Limiting Load Balancing Fallback0 码力 | 20 页 | 861.58 KB | 1 年前3
大规模分布式系统架构下调测能力构建之道单体应用 服务化 微服务 小中型规模应用+小型团队 中大型规模应用+多团队协同 Cache DB NFS Load Balancer website website website server server server server (超)大型规模应用+契约协同 应用的发展演变历史 服务化后的问题 多团队协同的分布式环境下,不仅环境“重”,而且外部的服务是别的团队开发 的 远程服务 Mock配置 开关/策略… 路由 策略 … Mock过滤器 启 动 加 载 服务 调用 脚本引擎 Mock数据规范 格式规范: 1.静态匹配 2.动态匹配 3.多版本支持(服务版本) 管理规范: 1.服务谁提供,就由谁负责相应Mock数据的 制作。 2.mock数据可被使用者二次修改或替换。 3.mock数据独立工程管理。 静态匹配(json) 动态匹配(脚本) MQ Mock 通过本地JVM自带BlockingQueue队列模拟分布式队列, 提供消息的发布、暂存、订阅、消费处理能力 代理门面 将MQ的调用用代理模式做一层封装。 开关机制 支持多级开关切换 消息预取 通过消息预判定,解决找不到消费者导致消息被抛弃 的问题。 优势:能用极低的资源损耗实现单机环境下对分布式 MQ服务的仿真模拟 分布式MQ服务 Producer20 码力 | 19 页 | 2.74 MB | 1 年前3
刘道平-从0到1,移动政务应用小程序系统架构演化五、政务服务系统架构小结与思考 4、一个特殊的移动政务应用项目 3 资源少:初期团队人员少、 业务推动阻力大 1 时间紧: 1月启动,5月上线 2 目标高:高频便民服务、 突出改革亮点,迎接大领 导视察 4 需求多:公积金、社 保、出入境、交管等, 服务很多,需要梳理 目录 一、移动政务应用服务现状与痛点 二、一个特殊的移动政务应用项目 三、政务服务小程序平台研发过程 四、政务服务小程序平台架构演化 下载成本高、推广难、占流量、占内存 开发成本 只需开发一套,组件丰富 每个端都得开发,标准化组件少 版本更新 无感知,轻量级更新 更新麻烦,审核周期长 服务触达 利用微信载体,消息通知更简单 APP消息,打扰多,用户遗漏概率大 拓展性 程序包小,可以关联调转 无大小限制,调转较难 智能化服务能力 微信自带组件,对接更容易 需根据场景单独对接,如人脸识别、支付等 产品自主性 需依托微信平台 完全自主可控 构建分布式微服务框架 1.采用etcd 构建微服务框架 etcd是一个分布式的 、一致的key-value存储,主要用途是共享配置和服务发现。Etcd已经在很多分布式系统中得 到广泛的使用。Etcd采用raft协议,来保证一致性。 2.后台服务采用Go开发,围绕业务功能需求,构建后台服务模块 包括个人中心、服务、待办服务、证照服务、公共服务、外部能力、业务办理服务和运营管理服务模块 12、系统部署架构反复评审论证0 码力 | 35 页 | 15.60 MB | 1 年前3
联想-贺钢架构工作在国际化项目中的应用实例• 要求不同: 各国法律法规(版权,协议,第三方,accessibility), 安全性和隐私… • 地域不同: 服务器的部署, 用户的访问, 组织架构, 团队沟通… 项目实例 -- XA项目背景及需求 • 多设备协作 PC, Mobile, Pad, Cloud… • 跨设备及云智能搜索 • 语音等多种输入方式 用例示意图 用户输入支持举例 3D Camera 项目实例 -- -- 项目开发团队 项目 备注 项目名称 XA 支持国家 160 多语言支持 27种语言 架构师 5-8人 开发人员 中国,美国,日本,印度 三方合作伙伴 6-7家 系统组件设计 图示 系统整体架构I 系统整体架构II 对架构设计的影响I -- 数据中心的设计 数据中心早期架构 数据中心碰到的问题 • 跨国网络引起的技术问题 • 来自法务的问题 • 来自安全部门的问题 来自安全部门的问题 数据中心最终方案 用户访问量对应的web架构 用户访问量 服务器架构 百万以下 单台或多台的简单架构,可以简单通过升级服务器 配置支持更多用户 百万到千万 增加Nginx(反向代理)或DNS负载均衡,redis内存 cache,数据库(Mysql)多台(数据在一个数据中心) 千万到亿 增加Web服务器内存缓存,集群,IP负载均衡,基于内 容请求分发,Mysql优化(如减少写,2/8原则)0 码力 | 53 页 | 2.36 MB | 1 年前3
从百度文件系统看大型分布式系统设计中的定式与创新交换机故障: 几十台机器突然消失 - 磁盘、单机故障 • 通过冗余应对故障 一个典型的数据处理场景 数据处理模块 数据接收模块 存储 主 从 从 1. 写入 2. 通知 3. 读取 多副本冗余 一致性问题 • 怎么定义写成功 - 3副本成功, 影响可用性 • 可以读从节点 - 刚写入的读不到 - 不一致 • 只允许读主节点 - 扩展性受限 数据处理模块 数据接收模块 分布式系统 - 容忍网络隔离是必须的 - CP、AP Quorum机制 • Quorum写(NWR) - Write 写成功W副本 - Read 读R副本 - W+R>N,就不会丢失更新 • 一致性协议 - Paxos - Raft CAP到CAD的演变 • 必须容忍网络隔离 - CAP->CA • 跨地域的延迟 - CA->CAD/CAL • 多数情况下我们更重视可用性 - CAD->CD 引入MetaServer 提升系统扩展性 • 设计的可扩展性 - 保证在规模扩大5倍或10倍是正常工作 • BFS避免了过渡设计 - 用设计中的不可扩展达到最大的可扩展 • 最多支持6万台机器 • 最多支持100亿文件 分布式存储系统设计的特殊性 • 最基础服务的提供者 - 不可能做成无状态的 • 最底层的仲裁者 - 不能依赖ZooKeeper等系统选主 - 分布式的双主问题只从存储系统解决0 码力 | 24 页 | 937.45 KB | 1 年前3
海量用户推送后台系统架构实践-曾振波新技术的应用 目录 关于极光 36.9 万 开发者 107.6 万 APP 198 亿 移动终端 10.4 亿 月独立 活跃设备 90 % 覆盖率 亿级长连接用户 SDK多版本并存 消息实时性 触达率要求 移动网络环境复杂性 海量用户数据存储 消息推送系统面临的挑战 极光推送服务架构 系统通道 API 用户筛选 用户分发 推送通道 极光通道 共享通道 • IDC数据同步 • 异步RPC • ICE - 负载均衡,AMI,AMD,多线程 极光推送后台系统架构 02 并行化 • 横向扩展处理能力 • 数据分片存储 • 多节点+分片+多副本架构 • 数据读写动态路由 • 请求并行处理 • 模块级别并行 • 代码级别并行 极光推送后台系统架构 03 MQ Segment OnlineMsg OnlineMsg OnlineMsg LevelDB(PIKA), 定制化 极光推送后台系统架构 04 程序及系统优化 • 内存 • 静态分配 • 内存池 • 内存对齐 • CPU Affinity • 网卡多队列 • 用户态协议栈(DPDK) 极光推送后台系统架构 05 基础组件服务化 • 业务方透明 • 统一管理 • 屏蔽后端变化 • AutoScale,Failover,AutoRecover0 码力 | 23 页 | 1.26 MB | 1 年前3
声明式自愈系统——高可用分布式系统的设计之道-王昕要在领域内 自己实现 如何设计好状态机和自愈协议? Writing Correct Software Is Hard! Math and Thinking Can Help Us! Ø TLA+ 是用来给(软件或硬件)系统建模的语言 Ø TLA+ 强调排除特定编程语言(软件或硬件)的影响验证系 统设计 Ø TLA+ 由 Paxos 协议的发明人 Leslie Lamport 发明 使用 高可用系统的最佳实践总结 最佳实践分享 有关 TLA+ 的使用 Ø 分布式系统设计 80% 的重点工作在与设计安全性原则 Ø 目前 TLA+ 工具已经有云服务上线,但只支持检查安全性 Ø 单机版的 TLA+ 工具支持系统活性的检查,但是性能比较差 Ø 活性检查的性能瓶颈在于系统状态图中强连通图算法的实现 Ø TLA+ 中实现的卡壳(Stutter)等价能力,即对所有状态保持不变 也是合法状态 错误回复缓存,过期时间不能太长,而且有清晰的 修复建议 Ø 数据库更新与缓存失效的策略 最佳实践分享 有关配置文件 Ø 集群使用统一的配置来源 Ø 定义正常的默认配置,满足读取不到配置的正 常运行 Ø 支持可扩展的配置命令格式 Ø 尽量支持更改配置不需要重启服务 Ø 注意配置项之间的关联性 欢迎与我交流 王昕个人微信 欢迎与我交流 王昕个人微信0 码力 | 44 页 | 2.47 MB | 1 年前3
领域驱动设计&中台/演进式架构的平台化落地evolutionary architecture supports guided, incremental change across multiple dimensions. 演进式架构⽀支持 在各个架构设计维度上, 沿着特定⽅方向进⾏行行频繁增量量式变更更。 guided 沿着特定⽅方向(guided)的演进 guided 架构“适应性函数 (Architectural 视化 ⽣生成 流⽔水 线 对接流⽔水线执 ⾏行行部署 分享 契约 应⽤用架构变更更 评审 关联变更更到需求 需求 查看需求 我的任务 对接外部 系统 前台 后台/⽀支持 为MVP包含的功能范围 服务地图 产品服务 ⽤用户 产品 容器器 云 PaaS ELK 监控 发布 平台 运维服务 服务实例例 资源池 运⾏行行架构 175 ⽤用户认证服务 •服务定义 •服务间及与外部 系统依赖关系 •DDD对象模型 服务地图 32 API管理理 •API定义 •服务与API关系 •多版本API管理理(API演进) 33 ⽣生成服务代码 •多框架⽀支持 •多架构⻛风格⽀支持(分层、DDD、 整洁等) •⾃自动⽣生成服务代码与配置 34 服务地图 数据库演进 与版本化管理理 •数据库引⼊入Flyway等 •⾃自动⽣生成初始脚本库0 码力 | 42 页 | 2.95 MB | 1 年前3
全球架构师峰会2019北京/量子计算/量子计算及其潜在应用&mdashParity,Bravyi-Kitaev 等 4.提供支持并行计算梯度的 Optimziers,能更快收敛 5.模拟业界最大规模 VQE (C2H4,14 orbitals)(核心技术:高质量初态 ansatz 制 备,有效参数约减,线路优化,并行梯度计算等) 6.支持 GUI 界面友好编程体验 华为量子化学软件包 HIQ Fermion 1:多参数约减算法,可约减高达80% 2: 多参数梯度优化算法, 测试300+参数 和测量,用经典计算机处理能量及参数优化更新。 量子部分 经典部分 华为 HiQ Fermion: 部分关键功能测试数据 提供不同优化器作对比 支持量子化学主流的费米子编码方法 Bravyi-Kitaev Transform 华为 HiQ Fermion: 部分关键功能测试数据 具备刻画分子势能面的能力 支持多种Hardware Efficient Ansatz CNOT Single qubit gates Jordan-Wigner learning 和 Monte Carlo 3. 兼容业界主力调控包Qutip等 4. 高性能计算能力(核心技术:新的计算Propagator方法,自主研发的 ODE计算模块,并行计算) 5.支持多比特优化 6. 为用户提供友好GUI 华为量子调控软件包 HIQ Pulse 1: 基于多种新型算法和技术实现量子优化控制算法性能数倍提升 2: 自研新型量子优化控制算法适应更广泛的应用场景0 码力 | 34 页 | 5.57 MB | 1 年前3
共 30 条
- 1
- 2
- 3













