33
QCon北京2014大会 41719

Q con shanghai2013-赵永明-ats与cdn实践

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: Q con shanghai2013-赵永明-ats与cdn实践

QCon北京2014大会 4月17—19日

Page 3: Q con shanghai2013-赵永明-ats与cdn实践

ATS与CDN实践 阿里CDN @ Qcon 2013

Page 4: Q con shanghai2013-赵永明-ats与cdn实践

赵永明

• 赵永明,淘宝花名永豪

• 阿里云核心系统研发Web平台部

• 阿里CDN的cache系统Apache Traffic Server开发

• Apache Traffic Server:作为中国最早的YTS用户,中国第一个committer+PMC成员

• tsar 2.0项目发起人

Page 5: Q con shanghai2013-赵永明-ats与cdn实践

总览

• Apache Traffic Server介绍

• 阿里CDN实践

• ATS社区

Page 6: Q con shanghai2013-赵永明-ats与cdn实践

第一段

• Apache Traffic Server介绍

• 阿里CDN实践

• ATS社区、中国、未来

Page 7: Q con shanghai2013-赵永明-ats与cdn实践

Apache Traffic Server 介绍

• 企业:省钱、省人

• 业务开发:稳定、高效

• 核心:恐怖、可怕

• 运维:靠谱、省心

好扩展的高性能缓存代理服务器

Page 8: Q con shanghai2013-赵永明-ats与cdn实践

全球用户

Page 9: Q con shanghai2013-赵永明-ats与cdn实践

第二段

• Apache Traffic Server介绍

• 阿里CDN实践

• ATS社区、中国、未来

Page 10: Q con shanghai2013-赵永明-ats与cdn实践

我们在做什么?

Cache UGC:与全国人们做斗争

• 数据量大:xx亿商品,xxPB存储

• 流量大:xxxx万QPS

• 业务需求极度压制:保双11而弃业务需求

Page 11: Q con shanghai2013-赵永明-ats与cdn实践

我们在做什么?

Cache UGC:与全国人们做斗争

• 数据量大:xx亿商品,xxPB存储

• 流量大:xxxx万QPS

• 业务需求极度压制:保双11而弃业务需求

分级存储

Page 12: Q con shanghai2013-赵永明-ats与cdn实践

分级存储

• 1.5TB存储,1Gb流量,32KB平均大

• 50%左右的磁盘命中,需要2000的IOPS

• 单Sata(SAS)盘最多80-100 IOPS

• Sata + SSD是解决问题的良好组合

Page 13: Q con shanghai2013-赵永明-ats与cdn实践

单盘性能瓶颈

Page 14: Q con shanghai2013-赵永明-ats与cdn实践

分级存储特点

• Block级,文件片(默认1M)粒度

同时支持大文件、小文件

LRU算法,简单有效

• 全局中间层,对上层业务透明

• 推荐比例:内存:SSD:SATS=1:10:100或更高

Page 15: Q con shanghai2013-赵永明-ats与cdn实践

分级存储效果

Page 16: Q con shanghai2013-赵永明-ats与cdn实践

我们在做什么?

Cache UGC:与全国人们做斗争

• 数据量大:xx亿商品,xxPB存储

• 流量大:xxxx万QPS

• 业务需求极度压制:保双11而弃业务需求

集群

Page 17: Q con shanghai2013-赵永明-ats与cdn实践

集群原架构 • 去HAproxy

• 提升业务自由度

Page 18: Q con shanghai2013-赵永明-ats与cdn实践

HAProxy挑战

• 性能,单机50% CPU用于HAproxy

• 7层屏蔽了业务能力

• hash引入复杂度,数据一致性保证

Page 19: Q con shanghai2013-赵永明-ats与cdn实践

HAProxy优化

• L5630单线程性能优化到1Gb/s

• 基于HAProxy的hash广播Purge

• Cache:HA = 1:1 CPU占用

Page 20: Q con shanghai2013-赵永明-ats与cdn实践

原生ATS集群

• 集群是Cache文件系统的延伸

• 4线程支持4G/s,50% CPU占用

• 更好的支持:purge、SPDY、rewrite

• 单集群可以支持200台机器

Page 21: Q con shanghai2013-赵永明-ats与cdn实践

我们在做什么?

Cache UGC:与全国人们做斗争

• 数据量大:xx亿商品,xxPB存储

• 流量大:xxxx万QPS

• 业务需求极度压制:保双11而弃业务需求

用户驱动

Page 22: Q con shanghai2013-赵永明-ats与cdn实践

remap.config

• 引入类似Nginx的格式,配置用户化

• 嵌入referrer ACL、records.config

• 规范remap的plugin使用

• 嵌入cache.config hosting.config等配置

Page 23: Q con shanghai2013-赵永明-ats与cdn实践

remap例子

acl define black_list deny { redirect_url http://pics.taobaocdn.com/pic_fobbiden.png referer domain xxx.com|xxxx.com|xxxxx.com } http vodcdn.video { acl check black_list map /withhead http://vodcdn.video.inner/withhead { config records proxy.config.http.origin_max_connections=100 plugin /usr/lib64/trafficserver/plugins/libmediaslice_pad.so.1 } map / http://vodcdn.video.inner/ { config records proxy.config.http.origin_max_connections=100 } }

Page 24: Q con shanghai2013-赵永明-ats与cdn实践

除了remap

• 使用DNS SRV管理回源(已包含在稳定版本中)

• 更细致的连接超时管理(大部分进主干)

• ts-lua,ATS的Lua语音插件(github开源)

• 支持Linux Native AIO的尝试(已进主干)

• 集群管理系统优化(部分提交社区)

• tsar多种ATS数据统计模块(开源在tsar项目中)

Page 25: Q con shanghai2013-赵永明-ats与cdn实践

我们还做了

• 日志系统与状态系统(已包含在稳定版本中)

• 支持删除、预加载的高效内容管理系统

• 内核协议栈优化

• 精准的IP库+全网细粒度调度系统

• 全网SLA检测系统(阿里度)

Page 26: Q con shanghai2013-赵永明-ats与cdn实践

甚至协议测试

• HTTP/1.1协议兼容性

• 跟进ATS功能测试

• 也支持Varnish Nginx

Squid等

https://github.com/alibaba/Macaroon

Page 27: Q con shanghai2013-赵永明-ats与cdn实践

效果

• Cache系统运维2人,支撑阿里CDN平稳运行

• CDN基础框架稳定,周边系统大跨步跟进

• TS团队前后5人被吸收为官方Committer(总34人)

• 社区的出色工作甚至重新赢回了雅虎的芳心

Page 28: Q con shanghai2013-赵永明-ats与cdn实践
Page 29: Q con shanghai2013-赵永明-ats与cdn实践

国内国外

• Yahoo:老东家

• Apple:代码主力,业界良心

• Comcast:视频存储大户,ISP视频加速

• LinkedIn:业务插件之王,C++API

• ypyun又拍云:提供CDN服务

• 4399小游戏:专用CDN

• VeryCloud云端网络:提供CDN服务

Page 30: Q con shanghai2013-赵永明-ats与cdn实践

后续计划

• Lua进核心,支持配置Lua化

• http v2,SPDY

• C++ API(已进主干)

• Cluster协议拓展,增强上下游网络处理效率

Page 31: Q con shanghai2013-赵永明-ats与cdn实践

回顾

• 介绍ATS

• 介绍阿里如何使用ATS

• 分级存储

• 集群

• 运维优化

• 社区发展

欢迎加入扎堆

来往扫一下吧!

Page 32: Q con shanghai2013-赵永明-ats与cdn实践

Thanks!

Page 33: Q con shanghai2013-赵永明-ats与cdn实践

特别感谢 QCon上海合作伙伴