SlideShare a Scribd company logo
1 of 44
cdn的设计原理
- xiaorui.cc
- 峰云就她了
introduce
什么是 CDN, 内容分发网络
为什么要用cdn ?
cdn的关键组件
cdn 内部实现原理, 架构拓扑及优化方法
源站层面的cdn架构及优化
网页层面的cdn架构及优化
dns
cdn
server
HTMLbrower
涉及的内容
cdn基本原理
内容缓存到不同地区的缓存服务器
实现就近访问原则
通过dns view 和 load status调度到不同的边缘节点
cdn target
构建边缘节点, 解决最后”一公里”
智能调度 (负载均衡, 故障屏蔽 , 就近访问)
智能路由 (寻找最优访问链路)
安全防护 (强大带宽, 边缘计算能力)
source - BJ
1.1.1.1
client - QD
cdn - QD
2.2.2.2
50 ms
10 ms
html view
xiaorui.cc/a.jpg
xiaorui.cc/b.jpg
/c.jpg
static.xiaorui.cc/a.jpg
DNS
static A 2.2.2.2
* A 1.1.1.1
* A 2.2.2.2
why use cdn ?
90%流量 : static zone
30 ms
handler request cost
dns scheduler
Edge Cache SH
Edge Cache BJ
Edge Cache GZ
source
LB
Ldns
x NS
.com/.xxx
root
“ Http Headers , Abort cache http protocol”
http header
Expires vs Cache-Control max-age
200 from cache vs 304
when F5 vs ctrl + F5 , add args in request header
F5 —> Cache-Control: max-age=0 ; If-Modified-Since。。。
Ctrl F5 —> Cache-Control: no-cache Pragma: no-cache
Last-Modified + If-Modified-Since vs Etag + If-None-Match
http header
no-cache vs no-store
no-cache , cache request source with 304
no-store , get file from source
X-Cache:HIT from xd33-98.sina.com.cn
X-Forwarded-For client_ip proxy1 proxy2
“ schduler zone contains view dns and each
cache load ”
scheduler
smart dns
view
ip db
edns
rule priority
scheduler
collect
可用性探测
Host存活
Service存活
性能探测
流量
cpu / mem
disk iops
服务注册
dns cluster
xiaorui.cc NS2
cc dns
RTT指标
root dns
xiaorui.cc NS1LVS
anycast dns cluster
青岛 1.1.1.1
上海 1.1.1.1
北京 1.1.1.1
利用一个/多个 bgp as 号码在不同的地区广播相同的一个ip段
anycast就是不同的服务器用了相同的ip地址
对坑攻击, 区域隔离 !
“ cache server optimize”
simple cdn diff
平台 存储 性能 共享存储 功能
squid disk/mem
2.7单核 > 3.x多
核
多级存储
acl, icp, rate等
等
varnish mem 极高 只能内存
基本的acl,
purge
nginx mem/disk 高 多级存储
功能多, 可
module扩展
ats mem/disk 很高 裸盘多级存储 功能强大, icp
proxy network io
| | | | | | | | | |
epoll
buffer
source
mem
returnreturn
lvs dr提高流量
nginx/haproxy
引流
一致性hash提高hit
探测高可用
移除lb
镜像站
cache server上报状态
Cache Load Balance 选型
vrrp
LB
(Nginx/Haproxy)
LVS
LB
(Nginx/Haproxy)
Ats
Ats
Ats
Ats
LVS
二级cache and icp
L2
L1
source
L1 L2 percent ?
icp
cdn secure
+ secure
waf
ddos
流量清洗
cc
limit rate or drop
验证码页面
js insert cookie token , cdn diff token
ddos
mpls
引流
正常状态
清洗
回注
pull vs push
pull
ops submit urls ,then cdn requests the urls.
push
cdn push files to cdn store
quickly push cache files with p2p
use icp protocol in the same zone
多级cache
mem
ssd
disk
hot
cold
推荐百分比 mem: ssd: sata = 1: 10: 100
数据结构
顶层hash map判断该文件的level位置
每个level cache都有数据位置表及Lru表
lru = double linked list + hash map
hash map存放linked node
Lru 长度是由level 字节动态控制
数据结构
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | |
顶层hash定位level
—
—
—
—
—
—
—
—
—
—
—
—
—
—
| | | | | | | |
| |
Hash ( List’ s node )
Lru deque
调整时需先copy后del
置换空间 15 %
预留空间 5 %
| | | | | | | | | | | | |
|
| | | | | |
| | | | | |
| |
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
satassdmemory
多级cache
起初
mem —> ssd —> disk
使用Lru淘汰冷文件, 超过阈值后主动淘汰, 定时调节各level cache
不使用raid, 如磁盘不可读, 摘掉
cache server内置disk的调度一致性hash
大文件直接到disk
coss 小文件, aufs 大文件. 可同时使用
裸盘的急速体验
扩展
purge
盗链 (refer, token)
限速
for source server
for client
文件合并及压缩
cdn 优化
选择性的ignore (reload  no-cache)
304不走磁盘
使用libaio (内核AIO)
视频分片
cdn server ——> web server , spdy + tfo
万兆网卡是标配
https装载卸载, ssl 加速卡 ?
使用trie树快速匹配, (purge, 黑名单, ip View)
“ soruce server frame optimize ”
simple bgp describe
lualu
通告 203.118.14.10/30
un
125.201.14.13/30
ct
203.118.14.9/30
* 小白 *
通过 125.201.14.14/30
bgp ip range
gateway
解决单ip多线路 !!!
AS 9504
AS 1111
AS 2222
source zone
LB
web
fuser/api
file server
fastdfs
gfs
ceph
gluster
ospf
lvs
http://static.xiaorui.cc/mm.jpg
“ html code optimize ”
源站优化
动静分离
after end template + fore-end mvc
优点
并行开发调试
服务化
后端模板渲染及传输成本
缺点
seo, seo, seo
ESI Include vs 静态化
源站优化
切割域名
提高brower并发
提高可用性, 页面的静态文件不会全部都挂
监听服务端的缓存热点压力
brower限制同一域名下并发数
引用外联地址的作用及方法
domain hash
cookie free
news
<esi:include src=“top_news.php” max-age="45"/>
csi
iframe, ajax …
ssi
include file
only source server
esi
pageage in edge cache
<esi:include src=“comment.php” max-age="45"/>
ESI vs SSI vs CSI
“ debug cache server ”
[ruifengyun@devops ~ ]$ dig @180.153.225.136 xiaorui.cc
...
;; ANSWER SECTION:
xiaorui.cc. 385 IN CNAME xiaorui.cc.w.kunlunca.com.
xiaorui.cc.w.kunlunca.com. 30 IN A 122.228.74.183
[ruifengyun@devops ~ ]$ dig @114.114.114.114 xiaorui.cc
;; ANSWER SECTION:
xiaorui.cc. 180 IN CNAME xiaorui.cc.w.kunlunca.com.
xiaorui.cc.w.kunlunca.com. 180 IN A 119.167.151.224
[ruifengyun@devops ~ ]$ dig @8.8.8.8 xiaorui.cc
;; ANSWER SECTION:
xiaorui.cc. 599 IN CNAME xiaorui.cc.w.kunlunca.com.
xiaorui.cc.w.kunlunca.com. 179 IN A 222.161.210.45
dns调度测试
[ruifengyun@devops ~ ]$ curl -I http://sports.sina.com.cn/china/
HTTP/1.1 200 OK
Server: nginx
Date: Tue, 21 Jun 2016 05:31:19 GMT
Content-Type: text/html
Last-Modified: Tue, 21 Jun 2016 04:34:29 GMT
Vary: Accept-Encoding
Expires: Tue, 21 Jun 2016 05:32:19 GMT
Cache-Control: max-age=60
X-Powered-By: schi_v1.02
X-Cache: HIT from ctc.gz.1cf2.42.spool.sina.com.cn
ETag: "57451990-481"
[ruifengyun@devops ~ ]$ curl -I http://sports.sina.com.cn/china/
…
X-Powered-By: schi_v1.02
X-Cache: MISS from ctc.gz.1cf2.38.spool.sina.com.cn
cdn hit miss测试
[ruifengyun@devops ~ ]$ curl -I http://sports.sina.com.cn/china/
HTTP/1.1 200 OK
Server: nginx
Date: Tue, 21 Jun 2016 05:31:19 GMT
Content-Type: text/html
Last-Modified: Tue, 21 Jun 2016 04:34:29 GMT
Vary: Accept-Encoding
Expires: Tue, 21 Jun 2016 05:32:19 GMT
Cache-Control: max-age=60
X-Powered-By: schi_v1.02
X-Cache: HIT from ctc.gz.1cf2.42.spool.sina.com.cn
ETag: "57451990-481"
[ruifengyun@devops ~ ]$ curl -I http://sports.sina.com.cn/china/
…
X-Powered-By: schi_v1.02
X-Cache: MISS from ctc.gz.1cf2.38.spool.sina.com.cn
cdn hit miss测试
[ruifengyun@devops ~ ]$ curl -I xiaorui.cc
HTTP/1.1 200 OK
Server: Tengine
Content-Type: text/html; charset=UTF-8
Content-Length: 105749
Connection: keep-alive
Vary: Accept-Encoding
Date: Tue, 21 Jun 2016 05:26:40 GMT
X-Powered-By: PHP/5.3.3
Cache-Control: max-age=3, must-revalidate
WP-Super-Cache: Served supercache file from PHP
Via: cache24.l2nu16-1[0,200-0,H], cache20.l2nu16-1[1,0], kunlun8.cn239[0,200-0,H], kunlun10.cn239[0,0]
Age: 2504
X-Cache: HIT TCP_MEM_HIT dirn:9:536240464
EagleId: 7a8de38a14664893048527282e
cdn hit miss测试
常见问题
切细static资源域名
ttl Ldns强制延长, A记录主机宕机了, how ?
httpdns
新增的节点, 需跑热
被劫持到isp cache, how ?
链路劫持, https
more…
“Q & A”
– xiaorui.cc

More Related Content

What's hot

Ceph in UnitedStack
Ceph in UnitedStackCeph in UnitedStack
Ceph in UnitedStackRongze Zhu
 
Redis 常见使用模式分析
Redis 常见使用模式分析Redis 常见使用模式分析
Redis 常见使用模式分析vincent253
 
Traffic server overview
Traffic server overviewTraffic server overview
Traffic server overviewqianshi
 
Cephfs架构解读和测试分析
Cephfs架构解读和测试分析Cephfs架构解读和测试分析
Cephfs架构解读和测试分析Yang Guanjun
 
美团点评技术沙龙010-Redis Cluster运维实践
美团点评技术沙龙010-Redis Cluster运维实践美团点评技术沙龙010-Redis Cluster运维实践
美团点评技术沙龙010-Redis Cluster运维实践美团点评技术团队
 
NoSQL误用和常见陷阱分析
NoSQL误用和常见陷阱分析NoSQL误用和常见陷阱分析
NoSQL误用和常见陷阱分析iammutex
 
美团技术沙龙04 - Kv Tair best practise
美团技术沙龙04 - Kv Tair best practise 美团技术沙龙04 - Kv Tair best practise
美团技术沙龙04 - Kv Tair best practise 美团点评技术团队
 
Memcached vs redis
Memcached vs redisMemcached vs redis
Memcached vs redisqianshi
 
Traffic server 管理员指南v1.0
Traffic server 管理员指南v1.0Traffic server 管理员指南v1.0
Traffic server 管理员指南v1.0qianshi
 
Lamp优化实践
Lamp优化实践Lamp优化实践
Lamp优化实践zhliji2
 
Ceph Day Beijing - Leverage Ceph for SDS in China Mobile
Ceph Day Beijing - Leverage Ceph for SDS in China MobileCeph Day Beijing - Leverage Ceph for SDS in China Mobile
Ceph Day Beijing - Leverage Ceph for SDS in China MobileDanielle Womboldt
 
redis 适用场景与实现
redis 适用场景与实现redis 适用场景与实现
redis 适用场景与实现iammutex
 
Apache trafficserver
Apache trafficserverApache trafficserver
Apache trafficserverDin Dindin
 
開發人員必須知道的 Kubernetes 核心技術 - Kubernetes Summit 2018
開發人員必須知道的 Kubernetes 核心技術 - Kubernetes Summit 2018開發人員必須知道的 Kubernetes 核心技術 - Kubernetes Summit 2018
開發人員必須知道的 Kubernetes 核心技術 - Kubernetes Summit 2018Will Huang
 
Design realization and application of RBD NBD - Wang Li
Design realization and application of RBD NBD - Wang LiDesign realization and application of RBD NBD - Wang Li
Design realization and application of RBD NBD - Wang LiCeph Community
 
Bypat博客出品-服务器运维集群方法总结3
Bypat博客出品-服务器运维集群方法总结3Bypat博客出品-服务器运维集群方法总结3
Bypat博客出品-服务器运维集群方法总结3redhat9
 
Docker進階探討
Docker進階探討Docker進階探討
Docker進階探討國昭 張
 

What's hot (20)

Ceph in UnitedStack
Ceph in UnitedStackCeph in UnitedStack
Ceph in UnitedStack
 
Redis 常见使用模式分析
Redis 常见使用模式分析Redis 常见使用模式分析
Redis 常见使用模式分析
 
Redis介绍
Redis介绍Redis介绍
Redis介绍
 
Traffic server overview
Traffic server overviewTraffic server overview
Traffic server overview
 
Cephfs架构解读和测试分析
Cephfs架构解读和测试分析Cephfs架构解读和测试分析
Cephfs架构解读和测试分析
 
美团点评技术沙龙010-Redis Cluster运维实践
美团点评技术沙龙010-Redis Cluster运维实践美团点评技术沙龙010-Redis Cluster运维实践
美团点评技术沙龙010-Redis Cluster运维实践
 
NoSQL误用和常见陷阱分析
NoSQL误用和常见陷阱分析NoSQL误用和常见陷阱分析
NoSQL误用和常见陷阱分析
 
美团技术沙龙04 - Kv Tair best practise
美团技术沙龙04 - Kv Tair best practise 美团技术沙龙04 - Kv Tair best practise
美团技术沙龙04 - Kv Tair best practise
 
Memcached vs redis
Memcached vs redisMemcached vs redis
Memcached vs redis
 
微服務自己動手做
微服務自己動手做微服務自己動手做
微服務自己動手做
 
Traffic server 管理员指南v1.0
Traffic server 管理员指南v1.0Traffic server 管理员指南v1.0
Traffic server 管理员指南v1.0
 
Lamp优化实践
Lamp优化实践Lamp优化实践
Lamp优化实践
 
Ceph perf-tunning
Ceph perf-tunningCeph perf-tunning
Ceph perf-tunning
 
Ceph Day Beijing - Leverage Ceph for SDS in China Mobile
Ceph Day Beijing - Leverage Ceph for SDS in China MobileCeph Day Beijing - Leverage Ceph for SDS in China Mobile
Ceph Day Beijing - Leverage Ceph for SDS in China Mobile
 
redis 适用场景与实现
redis 适用场景与实现redis 适用场景与实现
redis 适用场景与实现
 
Apache trafficserver
Apache trafficserverApache trafficserver
Apache trafficserver
 
開發人員必須知道的 Kubernetes 核心技術 - Kubernetes Summit 2018
開發人員必須知道的 Kubernetes 核心技術 - Kubernetes Summit 2018開發人員必須知道的 Kubernetes 核心技術 - Kubernetes Summit 2018
開發人員必須知道的 Kubernetes 核心技術 - Kubernetes Summit 2018
 
Design realization and application of RBD NBD - Wang Li
Design realization and application of RBD NBD - Wang LiDesign realization and application of RBD NBD - Wang Li
Design realization and application of RBD NBD - Wang Li
 
Bypat博客出品-服务器运维集群方法总结3
Bypat博客出品-服务器运维集群方法总结3Bypat博客出品-服务器运维集群方法总结3
Bypat博客出品-服务器运维集群方法总结3
 
Docker進階探討
Docker進階探討Docker進階探討
Docker進階探討
 

Similar to cdn的那些事儿

Ria的强力后盾:rest+海量存储
Ria的强力后盾:rest+海量存储 Ria的强力后盾:rest+海量存储
Ria的强力后盾:rest+海量存储 zhen chen
 
Inside the browser
Inside the browserInside the browser
Inside the browserotakustay
 
百度系统部分布式系统介绍 马如悦 Sacc2010
百度系统部分布式系统介绍 马如悦 Sacc2010百度系统部分布式系统介绍 马如悦 Sacc2010
百度系统部分布式系统介绍 马如悦 Sacc2010Chuanying Du
 
使用NodeJS构建静态资源管理系统
使用NodeJS构建静态资源管理系统使用NodeJS构建静态资源管理系统
使用NodeJS构建静态资源管理系统Frank Xu
 
Web Caching Architecture and Design
Web Caching Architecture and DesignWeb Caching Architecture and Design
Web Caching Architecture and DesignHo Kim
 
Hbase使用hadoop分析
Hbase使用hadoop分析Hbase使用hadoop分析
Hbase使用hadoop分析baggioss
 
探索 ISTIO 新型 DATA PLANE 架構 AMBIENT MESH - GOLANG TAIWAN GATHERING #77 X CNTUG
探索 ISTIO 新型 DATA PLANE 架構 AMBIENT MESH - GOLANG TAIWAN GATHERING #77 X CNTUG探索 ISTIO 新型 DATA PLANE 架構 AMBIENT MESH - GOLANG TAIWAN GATHERING #77 X CNTUG
探索 ISTIO 新型 DATA PLANE 架構 AMBIENT MESH - GOLANG TAIWAN GATHERING #77 X CNTUGYingSiang Geng
 
Huangjing renren
Huangjing renrenHuangjing renren
Huangjing renrend0nn9n
 
Redis 介绍 -田琪
Redis 介绍 -田琪Redis 介绍 -田琪
Redis 介绍 -田琪Shaoning Pan
 
0118 Windows Server 2008 的伺服器核心 (Server Core)
0118 Windows Server 2008 的伺服器核心 (Server Core)0118 Windows Server 2008 的伺服器核心 (Server Core)
0118 Windows Server 2008 的伺服器核心 (Server Core)Timothy Chen
 
腾讯大讲堂08 可扩展web架构探讨
腾讯大讲堂08 可扩展web架构探讨腾讯大讲堂08 可扩展web架构探讨
腾讯大讲堂08 可扩展web架构探讨George Ang
 
Beyond rails server
Beyond rails serverBeyond rails server
Beyond rails serverMichael Chen
 
Monitor is all for ops
Monitor is all for opsMonitor is all for ops
Monitor is all for ops琛琳 饶
 
Osc scott linux下的数据库优化for_postgresql
Osc scott linux下的数据库优化for_postgresqlOsc scott linux下的数据库优化for_postgresql
Osc scott linux下的数据库优化for_postgresqlOpenSourceCamp
 
20110625.【打造高效能的cdn系统】.易统
20110625.【打造高效能的cdn系统】.易统20110625.【打造高效能的cdn系统】.易统
20110625.【打造高效能的cdn系统】.易统锐 张
 
Cassandra简介.ppt
Cassandra简介.pptCassandra简介.ppt
Cassandra简介.pptjames tong
 
Squid安装配置
Squid安装配置Squid安装配置
Squid安装配置Yiwei Ma
 
从Docker到容器服务
从Docker到容器服务从Docker到容器服务
从Docker到容器服务Li Yi
 
大型视频网站单点分析与可用性提升-Qcon2011
大型视频网站单点分析与可用性提升-Qcon2011大型视频网站单点分析与可用性提升-Qcon2011
大型视频网站单点分析与可用性提升-Qcon2011Yiwei Ma
 
云网锦绣 SDN实战研讨会
云网锦绣 SDN实战研讨会云网锦绣 SDN实战研讨会
云网锦绣 SDN实战研讨会Hardway Hou
 

Similar to cdn的那些事儿 (20)

Ria的强力后盾:rest+海量存储
Ria的强力后盾:rest+海量存储 Ria的强力后盾:rest+海量存储
Ria的强力后盾:rest+海量存储
 
Inside the browser
Inside the browserInside the browser
Inside the browser
 
百度系统部分布式系统介绍 马如悦 Sacc2010
百度系统部分布式系统介绍 马如悦 Sacc2010百度系统部分布式系统介绍 马如悦 Sacc2010
百度系统部分布式系统介绍 马如悦 Sacc2010
 
使用NodeJS构建静态资源管理系统
使用NodeJS构建静态资源管理系统使用NodeJS构建静态资源管理系统
使用NodeJS构建静态资源管理系统
 
Web Caching Architecture and Design
Web Caching Architecture and DesignWeb Caching Architecture and Design
Web Caching Architecture and Design
 
Hbase使用hadoop分析
Hbase使用hadoop分析Hbase使用hadoop分析
Hbase使用hadoop分析
 
探索 ISTIO 新型 DATA PLANE 架構 AMBIENT MESH - GOLANG TAIWAN GATHERING #77 X CNTUG
探索 ISTIO 新型 DATA PLANE 架構 AMBIENT MESH - GOLANG TAIWAN GATHERING #77 X CNTUG探索 ISTIO 新型 DATA PLANE 架構 AMBIENT MESH - GOLANG TAIWAN GATHERING #77 X CNTUG
探索 ISTIO 新型 DATA PLANE 架構 AMBIENT MESH - GOLANG TAIWAN GATHERING #77 X CNTUG
 
Huangjing renren
Huangjing renrenHuangjing renren
Huangjing renren
 
Redis 介绍 -田琪
Redis 介绍 -田琪Redis 介绍 -田琪
Redis 介绍 -田琪
 
0118 Windows Server 2008 的伺服器核心 (Server Core)
0118 Windows Server 2008 的伺服器核心 (Server Core)0118 Windows Server 2008 的伺服器核心 (Server Core)
0118 Windows Server 2008 的伺服器核心 (Server Core)
 
腾讯大讲堂08 可扩展web架构探讨
腾讯大讲堂08 可扩展web架构探讨腾讯大讲堂08 可扩展web架构探讨
腾讯大讲堂08 可扩展web架构探讨
 
Beyond rails server
Beyond rails serverBeyond rails server
Beyond rails server
 
Monitor is all for ops
Monitor is all for opsMonitor is all for ops
Monitor is all for ops
 
Osc scott linux下的数据库优化for_postgresql
Osc scott linux下的数据库优化for_postgresqlOsc scott linux下的数据库优化for_postgresql
Osc scott linux下的数据库优化for_postgresql
 
20110625.【打造高效能的cdn系统】.易统
20110625.【打造高效能的cdn系统】.易统20110625.【打造高效能的cdn系统】.易统
20110625.【打造高效能的cdn系统】.易统
 
Cassandra简介.ppt
Cassandra简介.pptCassandra简介.ppt
Cassandra简介.ppt
 
Squid安装配置
Squid安装配置Squid安装配置
Squid安装配置
 
从Docker到容器服务
从Docker到容器服务从Docker到容器服务
从Docker到容器服务
 
大型视频网站单点分析与可用性提升-Qcon2011
大型视频网站单点分析与可用性提升-Qcon2011大型视频网站单点分析与可用性提升-Qcon2011
大型视频网站单点分析与可用性提升-Qcon2011
 
云网锦绣 SDN实战研讨会
云网锦绣 SDN实战研讨会云网锦绣 SDN实战研讨会
云网锦绣 SDN实战研讨会
 

More from rfyiamcool

Mysql fast share
Mysql fast shareMysql fast share
Mysql fast sharerfyiamcool
 
python高级内存管理
python高级内存管理python高级内存管理
python高级内存管理rfyiamcool
 
分析mysql acid 设计实现
分析mysql acid 设计实现分析mysql acid 设计实现
分析mysql acid 设计实现rfyiamcool
 
大话redis设计实现
大话redis设计实现大话redis设计实现
大话redis设计实现rfyiamcool
 
async io frame
async io frameasync io frame
async io framerfyiamcool
 
异步io框架的实现
异步io框架的实现异步io框架的实现
异步io框架的实现rfyiamcool
 
美妙的多进程管理
美妙的多进程管理美妙的多进程管理
美妙的多进程管理rfyiamcool
 

More from rfyiamcool (9)

Mysql fast share
Mysql fast shareMysql fast share
Mysql fast share
 
python高级内存管理
python高级内存管理python高级内存管理
python高级内存管理
 
分析mysql acid 设计实现
分析mysql acid 设计实现分析mysql acid 设计实现
分析mysql acid 设计实现
 
Raft
Raft Raft
Raft
 
大话redis设计实现
大话redis设计实现大话redis设计实现
大话redis设计实现
 
python gil
python gilpython gil
python gil
 
async io frame
async io frameasync io frame
async io frame
 
异步io框架的实现
异步io框架的实现异步io框架的实现
异步io框架的实现
 
美妙的多进程管理
美妙的多进程管理美妙的多进程管理
美妙的多进程管理
 

cdn的那些事儿