开源CDN软件简单调研

1 引言

突然想了解常见开源的CDN软件,于是Google了一下

2 了解结果

Google搜索结果来看,常见的软件有squidvanishapache traffic server(ATS),nginx等,从目前使用的趋势来看Apache Traffic Server占主流,也是未来的趋势。

有一些文章提到国内互联网公司和CDN厂商目前使用的方案。

  • 网宿,目前主要是ATS,按照网宿的规模应该是有能力进行二次开发。
  • 蓝汛,早期是squid,当其余厂商拥抱ATS时,由于技术包袱未及时投入ATS,但目前也在使用ATS
  • 小米,京东等主要使用ATS
  • 腾讯,搜到一片腾讯员工的博客,里面提到正在使用ATS,因此猜测腾讯也有可能使用ATS,加上ATS是C++语言,符合腾讯C++技术栈
  • 百度, nginx + 自研缓存
  • 阿里,tengine + 自研swift,早起使用ATS,但由于某些原因放弃ATS使用自研,不过自研可能是C开发,应该是参考哪款开源软件,比如文件系统借鉴的是squid的文件系统,网上有阿里云CDN老大shudu的PPT,由于未开源,预计是代码重合度比较高。
  • 又拍云,之前使用ATS,最新的消息是自研BearCache,应该不是全量部署,从文章来看猜测是优化了网络框架和热重启架构,应该也是参考ATS等。
  • 新浪, nginx + ncache,需要第三方模块并且插件化开发,性能损失比较大
  • 美丽说, Jaguar,GO语言开发,前期使用ATS,应该是ATS的go语言简化版。

3 总结

ATS是主流,但是ATS是C++语言开发,二次开发技术难度高,所以一些厂商转向自研,这篇文章也有助于即将从事CDN缓存开发的学习方向,就是好好研究ATS的源码。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 用两张图告诉你,为什么你的 App 会卡顿? - Android - 掘金 Cover 有什么料? 从这篇文章中你...
    hw1212阅读 14,466评论 2 59
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 175,044评论 25 709
  • 夏至的午后,雷阵雨来了 一大群乌云来了,狂风打阵 不是窗户挡着,雨就闯了进来 不是父母挡着,小男孩就闯进了雨里 人...
    楼台花舍阅读 1,540评论 0 1
  • 大概从懂事起,我们就注定要辛苦了。不过,这不是悲哀,而是幸运。幸好我们我们在这个世界上还追求着什么,幸亏我...
    笑那么迷人阅读 3,596评论 0 1
  • 距离你离开三月有余 早上醒来还是末日 晚上还是睡不着 感觉你离开这件事还是 超级虚幻 心口里的气还是一直闷着 最近...
    重复走阅读 1,098评论 0 0