【杂项】Aria2- 基础应用(持续更新)

1、Aria 基础设施

Aria2 下载器

Aria2 下载器支持多种 IPC 通信模式: JSON-RPC, XML-RPC。

IPC 机制

基于 Aria2 提供的 RPC 机制, 我们选择了 xmlrpc 作为进程间通信方式。xmlrpc 开源库多种多样, 比如:libmaia, timxmlrpc。

2、Aria 通信机制

Aria2 下载器具有较灵活的配置:全局配置,单文件配置。
其中,全局配置会覆盖默认参数并影响所有下载资源;单文件配置仅对指定文件生效。

  • –continue: 当下载中断时,支持继续下载(append and then check)
  • –auto-file-renaming=false: 不支持重命名,即:相同文件会被覆盖
  • –allow-override=true: 当缺少控制文件时,重新下载

同时,Aria2 支持通过 command-line 进行初始化,也支持通过 rpc 进行下载过程中的交互。

  • aria2.tellStatus: 信息或状态查询
  • aria2.addUri: 添加下载文件
  • aria2.pasueAll: 暂停操作,比如:下载,校验等
  • aria2.unpauseAll: 取消暂停操作
  • aria2.getVersion: 获取 aria 版本

3、注意事项

  • IPC通信:多文件下载时,略显鸡肋。需要主动查询并统计,还要控制好频率。同时,需要注意 aria2 的 初始化状态(借助 aria2.getVersion 探测)
  • 下载进度:各种原因会造成进度回退,需要针对性处理(更新文件,继续上次下载等情况)

【杂项】Aria2- 基础应用(持续更新)
https://jalencui.com/2024/09/16/Aria2-CommonSence-1/
Author
Jalen Cui
Posted on
September 16, 2024
Licensed under