feat: use aria2c for parallel downloads (8 connections, resumable)
Replaces wget with aria2c -x8 -s8 for significantly faster downloads, especially on high-latency connections. Falls back to single-connection if the server doesn't support range requests.
This commit is contained in:
parent
d050b8e6ed
commit
9110eb41bd
2 changed files with 5 additions and 4 deletions
|
|
@ -228,10 +228,10 @@ def session_upload(
|
|||
|
||||
logger.info("Starting background download: %s → %s", url, dest)
|
||||
try:
|
||||
proc = subprocess.Popen(
|
||||
["wget", "--progress=dot:giga", "-O", str(dest), url],
|
||||
stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL,
|
||||
)
|
||||
proc = subprocess.Popen(
|
||||
["aria2c", "-x8", "-s8", "-d", str(dest.parent), "-o", dest.name, url],
|
||||
stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL,
|
||||
)
|
||||
except Exception as exc:
|
||||
return JSONResponse({"phase": "error", "error": f"Failed to start download: {exc}"}, status_code=500)
|
||||
|
||||
|
|
|
|||
|
|
@ -37,6 +37,7 @@ REQUIRED=(
|
|||
python3-pip "pip3"
|
||||
wget "wget"
|
||||
curl "curl"
|
||||
aria2 "aria2c"
|
||||
openssh-client "scp"
|
||||
sshpass "sshpass"
|
||||
)
|
||||
|
|
|
|||
Loading…
Reference in a new issue