不推荐使用prestissimo插件。该插件已停止维护,Composer 2.0+原生支持并行下载(默认启用),强行安装易引发Class not found或依赖解析失败等问题。

prestissimo 插件是否还值得用?
不推荐。prestissimo 已停止维护,且自 Composer 2.0 起,原生已内置并行下载(parallel-downloads 配置),默认启用、无需插件。强行安装 prestissimo 可能导致 composer install 报错或与新版 Composer 冲突,比如出现 Class Prestissimo\Plugin not found 或依赖解析失败。
如何确认当前 Composer 是否启用并行下载?
Composer 2.2+ 默认开启并行下载,但可通过以下方式验证和微调:
- 运行
composer config -g --list | grep parallel,查看config.parallel-downloads值(默认为5) - 若需手动设置,执行
composer config -g parallel-downloads 10(值建议保持在5–15之间,过高反而因 DNS/连接争抢降低速度) - 注意:该配置仅影响下载阶段,不影响包解析或 autoloader 生成
镜像源切换必须靠手动配置,没有“自动选最快”的机制
Composer 本身不提供网络测速或动态镜像路由功能。所谓“自动选最快”,实际是用户通过脚本或工具预判后,再写入配置。国内常用做法是:
- 使用
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/切换阿里云镜像 - 或用清华源:
composer config -g repo.packagist composer https://packagist.phpcomposer.com(已停用)→ 应改用https://mirrors.tuna.tsinghua.edu.cn/composer/ - 如需临时覆盖(如 CI 环境),可在命令前加环境变量:
COMPOSER_REPO_PACKAGIST=https://mirrors.aliyun.com/composer/ composer install - 切勿混用多个镜像源——Composer 不支持 fallback 链式源,
repo.packagist是全局单点配置
真想“自动选最快”?得自己加一层脚本
可写一个简单 shell 脚本,用 curl -o /dev/null -s -w '%{time_total}\n' URL 测几个主流镜像的响应时间,取最低值后自动执行 composer config -g repo.packagist。但要注意:
- 测速结果受本地网络、DNS 缓存、CDN 节点影响,一次测速不代表长期最优
- 镜像同步延迟(如阿里云/腾讯云通常滞后主站数分钟)可能引发
Package not found错误,尤其安装非常新的版本时 - 生产环境建议固定使用一个稳定镜像(推荐阿里云),而非追求毫秒级差异
#!/bin/bash
urls=(
"https://mirrors.aliyun.com/composer/"
"https://mirrors.tuna.tsinghua.edu.cn/composer/"
"https://packagist.org/"
)
best_url=""
min_time=999
for url in "${urls[@]}"; do
t=$(curl -o /dev/null -s -w '%{time_total}' "$url" 2>/dev/null || echo "999")
if (( $(echo "$t < $min_time" | bc -l) )); then
min_time=$t
best_url=$url
fi
done
if [ -n "$best_url" ]; then
composer config -g repo.packagist composer "$best_url"
echo "Switched to: $best_url (latency: ${min_time}s)"
fi
镜像源的稳定性比绝对速度重要得多,尤其在自动化部署中——一次同步延迟导致的失败,远比慢几百毫秒更难排查。










