Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
小米运维基础设施
Search
laiwei
September 06, 2013
Technology
1.4k
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
小米运维基础设施
针对移动互联网应用的网络建设和优化 2013中国系统架构师大会
laiwei
September 06, 2013
More Decks by laiwei
See All by laiwei
小米-企业安全实践
laiwei
1
5.3k
小米运维自动化
laiwei
0
5.6k
小米自动化运维实践 qcon 2014 Beijing
laiwei
2
12k
noops in xiaomi @ Velocity 2013 beijing
laiwei
1
1.4k
laiwei #adc2013# #taobao adc#
laiwei
5
3.8k
Other Decks in Technology
See All in Technology
AIエージェントのためのデータ設計
daiz21
0
550
現場の暗黙知を継承するAIエージェント — 対話から生まれる長期記憶と Skills
atsukish
0
170
AI駆動開発をチームに根付かせる - 「1行も書かない」チームがHarnessを育てた1年 -
kenichirokimura
6
3.4k
OpenID for Verifiable Credentials 実装から見えた相互運用性確保までの道のり(OAuth/OIDC Numa (Immersion) Workshop 2026)
oidfj
PRO
0
380
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
20k
信頼性はSREだけのものじゃない
hkawaras
0
360
Introduction to Sansan, inc / Sansan Global Development Center, Inc.
sansan33
PRO
0
3.2k
サーバー常駐型の 簡易障害調査AI エージェントを作ってみた話
masayoshi
1
450
AIレビュー時代に必要なのは、SLOで引く撤退ライン
nobuoooo
0
150
Eight Engineering Unit 紹介資料
sansan33
PRO
3
8.3k
ClaudeCodeでセキュリティ監視業務を半自動化_1年の運用でわかったAIに任せる設計の5つのポイント
kintotechdev
3
950
PdMをやめて、 "プロダクトビルダー"という 働き方に変えました / PdM to Product Builder
shikichee
2
380
Featured
See All Featured
Music & Morning Musume
bryan
47
7.3k
Are puppies a ranking factor?
jonoalderson
2
3.9k
The Pragmatic Product Professional
lauravandoore
37
7.4k
Scaling GitHub
holman
464
140k
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
310
A better future with KSS
kneath
240
18k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.6k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
290
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6.1k
Design in an AI World
tapps
1
290
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
10k
Transcript
针对移动互联⺴⽹网应⽤用的⺴⽹网络建 设和优化 ⼩小⽶米运维基础设施 2013
李永斌 ! ⼩小⽶米运维部,⺫⽬目前主要负责运维基础设施的规划和构建 ! 联系⽅方式:
[email protected]
! ⽶米聊: 4374755 ! ⼩小⽶米运维部⾮非官⽅方Blog
http://noops.me/ ! ⼩小⽶米运维开源项⺫⽬目主⻚页 https://github.com/xiaomi-sa 自我介绍
www.xiaomi.com Q & A ⼩小⽶米的做法分享 如何应对?⼩小⽶米的想法 移⺴⽹网下运维的新挑战 背景 - 移动互联⺴⽹网快速成⻓长
内容
背景 一 移动互联⺴⽹网快速增⻓长,⼿手机成为第⼀一上⺴⽹网终端! 数据参考:百度移动互联⺴⽹网发展趋势报告2013Q1
背景 二 ⼩小⽶米是⼀一家专注于iphone、android等新⼀一 代智能⼿手机软件开发与热点移动互联⺴⽹网业务运 营的公司。 60% – 80% 请求来⾃自于移动互联⺴⽹网
www.xiaomi.com Q & A ⼩小⽶米的做法分享 如何应对?⼩小⽶米的思路 移⺴⽹网下运维的新挑战 背景 - 移动互联⺴⽹网快速成⻓长
内容
运维的新挑战 一 BSC BTS SGSN GGSN DNS 直射/反射/绕射/信号强度 IP传输网 CNC
CTC 数据依靠电波传输,质量不稳定 移动互联⺴⽹网建设在⼀一个发展阶段,并未完全成熟
运维的新挑战 二 :-D 正常情况下: (×_×) 还可能会遭遇: 域名⽆无法解析 ⽆无法和其他⺴⽹网络建⽴立连接 传输巨慢 Connect
reset by peer 类型 速度 传文件 实测 GPRS 171.2 kbps 21.4 kb/s ~ 16 kb/s EDGE 384 kbps 48 kb/s ~ 25 kb/s 3G > 2 Mbps >250 kb/s - PING: EDGE 300+ / GPRS 600+ 域名解析:> 2s 建⽴立连接:> 2s RTT: > 3s 数据传输:<5k (︶︿︶) 可能会遭遇: 米聊72%访问 来自于GPRS/ EDGE
www.xiaomi.com Q & A ⼩小⽶米的做法分享 如何应对?⼩小⽶米的想法 移⺴⽹网下运维的新挑战 背景 - 移动互联⺴⽹网快速成⻓长
内容
如何应对?小米的想法 ⽤用户就近获取内容 建CDN节点,能缓存的都缓存 避免⽤用户⾛走⼲⼴广域⺴⽹网 ⽤用户连节点,统⼀一优化传输 减少DNS查询 DNS⽀支持HTTP查询 减少TCP建⽴立连接 ⻓长链接/ keepalived
a b c d
www.xiaomi.com Q & A ⼩小⽶米的做法分享 如何应对?⼩小⽶米的想法 移⺴⽹网下运维的新挑战 背景 - 移动互联⺴⽹网快速成⻓长
内容
小米的做法分享 1. 建设节 点 质量 跟踪 ⽤用户 调度 1.节点建设 2.⽤用户调度
3.质量跟踪 4.持续优化 三者相互依托,形成持续优化的基础平台
节点建设 – 选点 Jinan CNC ! ⺴⽹网络测量⼯工具。基于Ping traceroute wget !
JS探针 客户端收集,绘制出质量地图 ! 运营商+地域 2个维度看节点的覆盖能⼒力。 ! Ping RTT测算省际间是否直连 ! 节点的回源质量
节点建设– 建点 • 把内容推送到离⽤用户最近的DC。 • 根据类型和⼤大⼩小定制缓存,⼤大部分频道98%+命中 率。 • 针对移动互联⺴⽹网的TCP优化 ⽤用
户 加 速 节 点 源 站 1 2 • 第1段,做到最短;第2段,优化传输。 • 经历了很多版本,也⾛走了不少弯路。 • GAD,VPN加密+节点 ,去加密 ,多链路回源, 应⽤用层多链路回源 ,专线 静态 动态
节点建设 – 加速案例 1 ! 基于路由切换链路 ! VPN链路 ! PING/TCP建⽴立连接测试
! 最短路径 ! UDP 路由通知 2 ! 应⽤用层实现 ! 并⾏行发送数据报,使⽤用先到数据 ! TCP聚合 Frontend Backend
小米的做法分享 2. ⽤用户调 度 质量 跟踪 节点 建设 1.节点建设 2.⽤用户调度
3.质量跟踪 4.持续优化 三者相互依托,形成持续优化的基础平台
! 存在优先级顺序 ! 客户端根据实际效果排序 ! 基于⽤用户来源IP地址调度 ! ⼀一次下发多组解析结果 用户调度 –
HTTP DNS Json 格式 ⽀支持HTTP查询的 DNS SMART DNS Bucket list Channel
! Nginx + Geo http_code_302 中央调度 ! ⼆二次调度修正⽤用户Local DNS错误 用户调度
– eDNS+中央调度 中⼼心调度 eDNS ! 通过Google 提交的DNS扩展协议,让Public DNS服务 器传递⽤用户的IP地址给你的 DNS server。 ! 通过⽤用户真实的IP地址,进⾏行准确的调度。 ! http://noops.me/?p=653 http_redirect ⽤用户体验提升 成本优化
小米的做法分享 3. 质量跟 踪 ⽤用户 调度 节点 建设 三者相互依托,形成持续优化的基础平台 1.节点建设
2.⽤用户调度 3.质量跟踪 4.持续优化
质量跟踪 – 主要途径 ! 客户端采集 ! ⽤用户反馈,⽇日志提交 ! 服务器端分析 !
质量监控
! 在通过⾃自开发⼯工具(TCPXM)全量/取样 采集可以标识⽤用户质量的数据 质量跟踪 – TCPXM采集 http://noops.me/?p=594 https://github.com/xiaomi-sa/tcpxm
! TCPXM 获取的数据绘制出不同ISP的质量图表 ! 不同⾊色差标识该单元质量差异 ! 还可以提供其他多维度的统计表 质量跟踪 – TCPXM报表
! 基于访问占⽐比和平均速度,定义⽤用户质量红线 ! 对红线外的调度单元进⾏行优化
小米的做法分享 质量跟 踪 ⽤用户 调度 节点 建设 三者相互依托,形成持续优化的基础平台 1.节点建设 2.⽤用户调度
3.质量跟踪 4.持续优化
持续优化 一 优化 修正IP库 主动修正:多IP库对⽐比合并 被动修正:质量跟踪判别,⾃自定义条⺫⽬目 修正调度错误 可灵活配置的调度后台 地域联通性问题 建立节点
寻找回源 节点的持续优化 节点质量的不稳定,持续优化和删减
BOSH 系统让客户端提升连通性 ! Bidirectional-streams Over Synchronous HTTP (BOSH) 是⼀一种传输协议。 !
它可以利⽤用同步的HTTP协议模拟两个实体(例如 客户端-服务端)双向流传输,⽽而不需要轮询或异 步组件 持续优化 – BOSH 23.70% 18.60% 15.30% 23.24% 51.00% 米聊登录失败时,其他网络测试的成 功比率
效果对比 静态⽂文件下载 ⽶米聊登陆 平均大小38k,100ms内完成请求占比 在3s内完成登陆占比 40% 95% 2011年6月 2013年6月 35%
95% 2011年6月 2013年6月
Thanks!