写点什么

Dragonfly v2.2.0 发布:Rust 客户端、P2P 升级、增强图片加速

作者:Claudio Masolo

  • 2025-02-18
    北京
  • 本文字数:1471 字

    阅读完需:约 5 分钟

Dragonfly v2.2.0 发布:Rust 客户端、P2P 升级、增强图片加速

今年 1 月,云原生计算基金会(CNCF)发布 了 Dragonfly 2.2.0 版,为这个开源的点对点(P2P)文件分发和镜像加速系统引入了几项重大改进。


Dragonfly 是一个基于点对点(P2P)的开源系统,旨在提高大规模文件分发和镜像加速的效率。利用来自对等点的空闲带宽可加速各个领域的数据分发,包括镜像和文件分发、AI 模型传播和数据集共享操作。Dragonfly 的主要特性包括对多个容器运行时和下载工具的非侵入式支持、可配置的对等点设置(例如负载和流量限制)以及确保文件一致性和隔离异常以提高下载稳定性的机制。其架构包括了管理器、调度器、Seed Peer 和 Peer 等组件,它们协作管理任务并优化 P2P 网络内的数据传输。


2.2.0 版本中的一个显著改进是用 Rust 重新实现了 Dragonfly 客户端。这种转变提高了内存安全性并增强了性能,有助于提供更强大、更高效的客户端体验。


更新后的客户端现在支持对预取请求进行带宽速率限制。此特性可防止网络拥塞并减少与活动下载任务的竞争,从而优化整体系统性能。用户可以通过 proxy.prefetchRateLimit 选项配置此设置。



下载速率限制


Dragonfly v2.2.0 引入了一个纯下载模式,允许客户端禁用共享。当配置为该模式时,客户端仅作为下载器运行,而不会对分发网络做出贡献,这一特性为有特定要求的用户提供了灵活性。


该版本还包括了几项优化,以增强客户端在管理大量小型输入 / 输出操作方面的性能,尤其有利于 Nydus 等应用程序。主要改进包括:


  • 引入 X-Dragonfly-Prefetch HTTP 标头,以启用范围请求的全任务预取。

  • 实现独立的 HTTP 代理缓存,通过减少 gRPC 服务器请求来降低延迟。

  • 扩展 RocksDB 内存缓存大小,并启用前缀搜索功能,加快片段元数据检索速度。

  • 采用带硬件加速的 CRC-32-Castagnoli 算法,降低片段内容哈希计算开销。

  • 重用 gRPC 连接,优化下载逻辑,提升效率。


Dragonfly v2.2.0 定义了其 P2P 传输协议的第二个版本,旨在更加标准化、更清晰、更高效。这一更新有望提升 P2P 网络内的数据传输效率。


新版本加强了与 Harbor v2.13 的集成,重点关注镜像的 P2P 预热。改进包括:


  • 支持预热多架构镜像。

  • 用户定义的预热范围允许在单个 Seed Peer、所有 Seed Peers 或所有 Peers 中选择,以实现多粒度预热。

  • 用户能够指定调度程序集群 ID,以将预热定向到所需的 Dragonfly 集群。


这些改进旨在让用户在管理镜像分发和加速任务时拥有更多控制权和效率。


有几种工具提供与 Dragonfly v2.2.0 类似的功能,用于大规模文件分发、容器镜像加速和点对点数据传输:


  • BitTorrent 是一种广泛使用的 P2P 协议,可在去中心化网络中高效分发大文件,使其成为通用文件共享的可行替代方案。

  • JFrog Artifactory 是一个强大的工件存储库管理器,为容器镜像、二进制文件和其他软件工件提供缓存和分发。

  • FastDFS 是一种轻量级开源分布式文件系统,针对小文件存储和同步进行了优化,但它缺乏容器镜像加速功能。

  • Amazon S3 Transfer Acceleration 利用亚马逊的全球边缘网络来加速大规模文件传输,使其成为已经使用 AWS 的组织的理想选择。


总之,Dragonfly v2.2.0 通过其新的基于 Rust 的客户端、改进的带宽管理和增强的 Harbor 集成增强了 P2P 文件分发效率。虽然存在 BitTorrent 和 Amazon S3 Transfer Acceleration 等替代方案,但 Dragonfly 对 I/O 操作和容器镜像加速的优化使其非常适合需要高效、大规模文件分发的云原生环境。


原文链接:


Dragonfly v2.2.0 Released: Rust Client, P2P Upgrades, and Enhanced Image Acceleration (https://www.infoq.com/news/2025/01/dragonfly-rust-client/)

2025-02-18 14:306199

评论

发布
暂无评论

软件测试 | K&S安装与配置

测吧(北京)科技有限公司

测试

软件测试 | K&S批量运行测试用例

测吧(北京)科技有限公司

测试

MathType2023免费版数学公式编辑器

茶色酒

MathType2023

Spring进阶:定义bean时容易踩的两个坑,连老手也容易犯错

程序员拾山

spring

软件测试环境安装

测吧(北京)科技有限公司

测试

软件测试 | pb协议的接口测试

测吧(北京)科技有限公司

测试

设计模式之美—接口隔离

GalaxyCreater

设计模式

软件测试 | Xcode基础使用

测吧(北京)科技有限公司

测试

软件测试 | Jenkinsfile语法

测吧(北京)科技有限公司

测试

ChatGPT,开启人机交互新篇章 | 社区征文

柒号华仔

人工智能 openai ChatGPT

ListView简单实用

芯动大师

ListView baseadapter stackfrombottom

软件测试 | Script Pipeline

测吧(北京)科技有限公司

测试

Janus: 基于eBPF的5G实时AI控制器

俞凡

架构 网络 通信 ebpf RIC

你应该了解哪些延迟数字?

Kian.Lee

I/O Latency CPU 寄存器 RAM SDD L1\L2\L3

软件测试 | 如何安装WebDriverAgent

测吧(北京)科技有限公司

测试

软件测试 | K8S管理命令

测吧(北京)科技有限公司

测试

软件测试 | websocket接口测试

测吧(北京)科技有限公司

测试

4.基于Label studio的训练数据标注指南:情感分析任务观点词抽取、属性抽取

汀丶人工智能

自然语言处理 数据标注 实体抽取

软件测试 | PageObject模式

测吧(北京)科技有限公司

测试

软件测试 | Tcp协议的接口测试

测吧(北京)科技有限公司

测试

软件测试 | Dubbo协议的接口测试

测吧(北京)科技有限公司

测试

Jetpack-Compose 学习笔记(一)—— Compose 初探

修之竹

android Compose android jetpack

软件测试 | Dashboard是什么?

测吧(北京)科技有限公司

测试

软件测试 | 认识Pipline

测吧(北京)科技有限公司

测试

软件测试 | Blue Ocena应用

测吧(北京)科技有限公司

测试

软件测试 | K&S容器技术介绍

测吧(北京)科技有限公司

测试

免费赠送测试开发精品课,提高职场竞争力!

测吧(北京)科技有限公司

测试

详解基于 Celestia、Eclipse 构建的首个Layer3 链 Nautilus Chain

西柚子

放弃网站不是明智之举,中小企业要选择适合自己的营销模式

石头IT视角

软件测试 | Capability如何使用

测吧(北京)科技有限公司

测试

软件测试 | predicateString定位

测吧(北京)科技有限公司

测试

Dragonfly v2.2.0 发布:Rust 客户端、P2P 升级、增强图片加速_云原生_InfoQ精选文章