使用rclone同步Google Drive文件到本地时持续触发速率限制该如何解决
解决方案
- 优先替换rclone默认的公共API凭证
Google Drive API的公共配额是所有使用rclone默认配置的用户共用的,很容易被集体限流,你可以自行在Google Cloud控制台创建专属的OAuth 2.0客户端凭证,启用Drive API后将生成的客户端ID、客户端密钥配置到你的rclone Google Drive远程配置中,即可使用独立的项目配额,避免被公共用户的请求波及。 - 调整rclone运行参数降低请求并发
你遇到的403报错多是单身份短时间请求数超过秒级/分钟级阈值导致的,并非总项目配额不足,可在运行rclone copy时添加以下参数限制请求频率:
其中rclone copy gdrive:你的网盘路径 /本地存储路径 --transfers 4 --checkers 8 --tpslimit 10 --drive-pacer-min-sleep 100ms--transfers控制同时传输的文件数,--tpslimit限制每秒API请求数,你可以根据实际运行情况逐步上调数值,找到不会触发限流的最高阈值。 - 多服务账号轮询分散请求压力
如果你使用的是Google Workspace账号,可以创建多个服务账号并授予Drive访问权限,将所有服务账号的JSON密钥存放在同一个本地文件夹中,运行rclone时添加参数--drive-service-account-file-path 你的密钥文件夹路径,rclone会自动轮询不同服务账号发送请求,大幅降低单账号触发限流的概率,适合800GB这类大体积数据的批量迁移。 - 申请提升官方配额
如果以上优化后仍然无法满足迁移速度需求,你可以在Google Cloud控制台的Drive API配额页面提交配额提升申请,明确说明是数据迁移场景,付费的Google Workspace企业账号申请的通过率更高,可申请提升单用户每秒请求数、总请求数等阈值。 - 拆分迁移任务
你可以将整个网盘的内容按目录拆分成多个子任务分时段执行,避免短时间内请求量冲高触发动态限流,也方便断点续传避免重复工作。
内容的提问来源于stack exchange,提问作者tomtp
相关产品推荐
相关产品推荐

