本博客日IP超过2000,PV 3000 左右,急需赞助商。
极客时间所有课程通过我的二维码购买后返现24元微信红包,请加博主新的微信号:xttblog2,之前的微信号好友位已满,备注:返现
受密码保护的文章请关注“业余草”公众号,回复关键字“0”获得密码
所有面试题(java、前端、数据库、springboot等)一网打尽,请关注文末小程序
腾讯云】1核2G5M轻量应用服务器50元首年,高性价比,助您轻松上云
Dragonfly 是阿里巴巴最新开源出来的一个分布式文件分发系统。官方目前还没有对应的中文介绍,我这里大概翻译了一下其英文简介,供大家参阅!
按照官方的说法,Dragonfly 是一个大型、高性能、企业级的基于P2P的文件分发系统。
介绍
Dragonfly,中文名译作:蜻蜓。蜻蜓(Dragonfly)是一个基于P2P的智能文件分发系统。解决了应用部署,大规模缓存文件分发,数据文件分发,图像分发等大规模文件分发场景中低效率,低成功率,浪费网络带宽等问题。在阿里巴巴,系统每月转移20亿次,分配3.4PB数据,成为阿里巴巴最重要的基础设施之一。可靠性高达99.9999%。
DevOps从容器技术中获得很多好处,但同时它也带来了很多挑战:图像分发的效率,特别是当您有很多应用程序并需要同时分发图像时。Dragonfly与Docker和Pouch都非常合作,实际上我们可以兼容任何其他容器技术,而无需对容器引擎进行任何修改。
它提供高达本机码头吞吐量57倍的吞吐量,并节省高达99.5%的注册表带宽。
蜻蜓使设置,操作和缩放任何类型的文件/图像/数据分布变得简单且经济高效。
特征
该项目是蜻蜓的开源版本,更多的内部特征将逐渐打开。
- 基于P2P的文件分发:利用P2P技术进行文件传输,可以充分利用每个对等体的带宽资源来提高下载效率,节省了大量的跨IDC带宽,尤其是高成本的跨板带宽
- 非侵入式支持各种容器技术:蜻蜓可无缝支持各种容器分发图像。
- 主机级别速度限制:许多下载工具(wget / curl)只对当前下载任务有速率限制,但蜻蜓还为整个主机提供速率限制。
- 被动CDN:CDN机制可以避免重复的远程下载。
- 强一致性:即使用户不提供任何校验码(MD5),Dragonfly也可以保证所有下载的文件必须一致。
- 磁盘保护和高效IO:预先检查磁盘空间,延迟同步,按最佳顺序写入文件块,拆分网络读取/磁盘写入等。
- 高性能:集群管理器是完全闭环的,这意味着它不依赖于任何数据库或分布式缓存,以极高的性能处理请求。
- 异常自动隔离:Dragonfly将自动隔离异常节点(对等或集群管理器)以提高下载稳定性。
- 文件来源没有压力:一般来说,只要少数几个Cluster Managers从源文件下载文件即可。
- 支持标准的http头:支持http头,通过http头提交认证信息。
- 注册表验证的有效并发控制:降低注册表验证服务的压力。
- 简单易用:极少需要配置。
与 wget 测试比对
测试环境 | |
---|---|
蜻蜓服务器 | 2 *(24核64GB 2000Mb / s) |
文件源服务器 | 2 *(24核64GB 2000Mb / s) |
客户 | 4核8GB 200Mb / s |
目标文件大小 | 200MB |
执行日期 | 2016年4月20日 |
对于Dragonfly,无论有多少客户端下载文件,平均下载时间总是在12秒左右。而对于wget,当你拥有更多的客户端时,下载时间会不断增加,并且随着wget客户端数量达到1200,文件源将崩溃,然后无法为任何客户端提供服务。
Dragonfly 在各方面都领先目前市面上同类开源产品。开源不到1天时间,已经被 fork 200 多次了。阿里开源出来的产品还是值得信赖的!
喜欢的朋友可以关注我的博客,后面会推出相关的一些使用教程。Dragonfly 官网:https://alibaba.github.io/Dragonfly
最后,欢迎关注我的个人微信公众号:业余草(yyucao)!可加作者微信号:xttblog2。备注:“1”,添加博主微信拉你进微信群。备注错误不会同意好友申请。再次感谢您的关注!后续有精彩内容会第一时间发给您!原创文章投稿请发送至532009913@qq.com邮箱。商务合作也可添加作者微信进行联系!
本文原文出处:业余草: » 阿里巴巴 Dragonfly(文件分发系统) 简介