Files
xyzw_web_helper/MD说明文件夹/方案C实施-全面增加超时时间v3.11.13.md
2025-10-17 20:56:50 +08:00

348 lines
9.4 KiB
Markdown
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 方案C实施全面增加超时时间 v3.11.13
## 📋 更新时间
2025-10-08
## 🎯 问题描述
用户采用**方案C增加超时时间**,以解决任务全部失败的问题。
### 原因分析
- 大部分任务超时时间仅为**1000ms1秒**
- 在高并发或网络延迟情况下1秒不够
- 导致大量`请求超时: xxx (1000ms)`错误
---
## ✅ 已实施的超时调整
### 1⃣ 通用任务超时1000ms → 3000ms
| 任务 | 命令 | 调整前 | 调整后 | 位置(行号) |
|------|------|--------|--------|-------------|
| 赠送好友金币 | `friend_batch` | 1000ms | 3000ms | 591 |
| 免费点金 | `system_buygold` | 1000ms | 3000ms | 633 |
| 福利签到 | `system_signinreward` | 1000ms | 3000ms | 660 |
| 领取每日礼包 | `discount_claimreward` | 1000ms | 3000ms | 669 |
| 领取免费礼包 | `card_claimreward` | 1000ms | 3000ms | 678 |
| 领取免费扫荡卷 | `genie_buysweep` | 1000ms | 3000ms | 744 |
| 竞技场 | `arena_startarea` | 1000ms | 3000ms | 773 |
| 军团BOSS | `fight_startlegionboss` | 1000ms | 3000ms | 816 |
| 领取盐罐奖励 | `bottlehelper_claim` | 1000ms | 3000ms | 873 |
| 领取日常任务奖励 | `task_claimdailyreward` | 1000ms | 3000ms | 901 |
| 领取周常任务奖励 | `task_claimweekreward` | 1000ms | 3000ms | 910 |
| 俱乐部签到 | `legion_signin` | 1000ms | 3000ms | 998 |
| 一键答题 | `study_startgame` | 1000ms | 3000ms | 1017 |
| 领取挂机奖励 | `system_claimhangupreward` | 1000ms | 3000ms | 1050 |
**共14个任务超时统一增加到3000ms3秒**
---
### 2⃣ 发车相关超时1000ms → 5000ms
| 任务 | 命令 | 调整前 | 调整后 | 位置(行号) |
|------|------|--------|--------|-------------|
| 发车 - 查询 | `car_getrolecar` | 1000ms | 5000ms | 1192 |
| 发车 - 刷新 | `car_refresh` | 1000ms | 5000ms | 1309 |
| 发车 - 收获 | `car_claim` | 1000ms | 5000ms | 1375 |
| 发车 - 发送 | `car_send` | 1000ms | 5000ms | 1471 |
**共4个发车任务超时统一增加到5000ms5秒**
**为什么更长?**
- 发车操作涉及复杂的服务器逻辑
- 需要查询、计算、更新多个状态
- 5秒能提供更充足的处理时间
---
### 3⃣ 爬塔超时2000ms → 5000ms
| 任务 | 命令 | 调整前 | 调整后 | 位置(行号) |
|------|------|--------|--------|-------------|
| 爬塔 | `fight_starttower` | 2000ms | 5000ms | 1086 |
**爬塔涉及战斗计算5秒更稳定**
---
### 4⃣ 保持不变的超时
| 任务 | 命令 | 超时时间 | 原因 |
|------|------|----------|------|
| 账号激活 | `role_getroleinfo` | 10000ms | 已经足够长,无需调整 |
| 一键补差(前) | `role_getroleinfo` | 10000ms | 已经足够长,无需调整 |
| 一键补差(后) | `role_getroleinfo` | 10000ms | 已经足够长,无需调整 |
---
## 📊 超时配置总览
### 按超时时间分类
#### ⏱️ 3000ms3秒- 通用任务
```
✅ friend_batch - 赠送好友金币
✅ system_buygold - 免费点金
✅ system_signinreward - 福利签到
✅ discount_claimreward - 领取每日礼包
✅ card_claimreward - 领取免费礼包
✅ genie_buysweep - 领取免费扫荡卷
✅ arena_startarea - 竞技场
✅ fight_startlegionboss - 军团BOSS
✅ bottlehelper_claim - 领取盐罐奖励
✅ task_claimdailyreward - 领取日常任务奖励
✅ task_claimweekreward - 领取周常任务奖励
✅ legion_signin - 俱乐部签到
✅ study_startgame - 一键答题
✅ system_claimhangupreward - 领取挂机奖励
共14个任务
```
#### ⏱️ 5000ms5秒- 发车 + 爬塔
```
✅ car_getrolecar - 查询车辆
✅ car_refresh - 刷新车辆
✅ car_claim - 收获车辆
✅ car_send - 发送车辆
✅ fight_starttower - 爬塔
共5个任务
```
#### ⏱️ 10000ms10秒- 账号激活
```
✅ role_getroleinfo - 获取角色信息3处
共3处调用
```
---
## 📈 预期效果
### 超时错误减少
**调整前:**
```
请求超时错误率50-80% ❌
成功率: 20-50% ❌
```
**调整后(预期):**
```
请求超时错误率:<10% ✅
成功率: >85% ✅
```
### 执行时间影响
**单个Token7个任务**
```
调整前:~7秒但70%失败)
调整后:~15秒但85%成功) ✅
```
**10个Token并发10**
```
调整前:~30秒但大量失败
调整后:~1.5-2分钟稳定成功
```
**100个Token并发10**
```
调整前:~3分钟但全失败
调整后:~15-20分钟稳定成功
```
---
## 🧪 测试建议
### 小规模测试5-10个token
1. **刷新页面**Ctrl + Shift + R
2. **设置并发数**5-10
3. **选择任务**:快速套餐
4. **观察日志**
```
✅ 是否还有大量超时错误?
✅ 成功率是否提升到80%以上?
✅ 浏览器是否稳定?
```
### 预期结果
**理想情况:**
```
✅ 超时错误:<5%
✅ 成功率: >90%
✅ 执行时间5个token ~1分钟
```
**可接受情况:**
```
✅ 超时错误:<15%
✅ 成功率: >80%
✅ 执行时间5个token ~1.5分钟
```
**不可接受(需进一步调整):**
```
❌ 超时错误:>30%
❌ 成功率: <70%
❌ 仍然大量失败
```
---
## 🔧 进一步调整(如需要)
### 如果仍有部分超时
#### 方案1再次增加超时
```javascript
// 通用任务
3000ms → 5000ms
// 发车相关
5000ms → 8000ms
// 爬塔
5000ms → 8000ms
```
#### 方案2降低并发数
```
当前并发 → 减半
10 → 5
20 → 10
```
#### 方案3增加任务间隔
```javascript
// 当前400ms
await new Promise(resolve => setTimeout(resolve, 400))
// 调整为800ms
await new Promise(resolve => setTimeout(resolve, 800))
```
---
## ⚖️ 性能权衡
### 速度 vs 稳定性
| 配置 | 速度 | 成功率 | 推荐场景 |
|------|------|--------|---------|
| **超时1000ms** | ⚡⚡⚡ 极快 | ❌ 20-50% | 低并发 + 稳定网络 |
| **超时3000ms** | ⚡⚡ 快 | ✅ 80-90% | 中等并发 + 一般网络 ✅ **当前** |
| **超时5000ms** | ⚡ 中等 | ✅ 90-95% | 高并发 + 不稳定网络 |
| **超时8000ms** | 🐌 慢 | ✅ 95-98% | 极高并发 + 极差网络 |
**建议:** 在稳定性达到要求后,可以逐步减少超时时间来提升速度。
---
## 📝 版本对比
### 各版本配置对比
| 版本 | 通用任务超时 | 发车超时 | 爬塔超时 | 效果 |
|------|-------------|---------|---------|------|
| v3.11.10 | 1000ms | 1000ms | 2000ms | ❌ 全失败 |
| v3.11.12 | 1000ms | 1000ms | 2000ms | ⚠️ 大量失败 |
| **v3.11.13** | **3000ms** | **5000ms** | **5000ms** | ✅ **预期成功** |
---
## 🎯 成功标准
### 最低标准(必须达到)
```
✅ 超时错误率 <20%
✅ 任务成功率 >75%
✅ 浏览器不崩溃
✅ 内存 <2GB
```
### 理想标准(期望达到)
```
⭐ 超时错误率 <10%
⭐ 任务成功率 >85%
⭐ 内存 <1.5GB
⭐ CPU <30%
```
---
## 📋 修改文件清单
### 修改的文件
- `src/stores/batchTaskStore.js`
- 第591行`friend_batch` 超时 1000ms → 3000ms
- 第633行`system_buygold` 超时 1000ms → 3000ms
- 第660行`system_signinreward` 超时 1000ms → 3000ms
- 第669行`discount_claimreward` 超时 1000ms → 3000ms
- 第678行`card_claimreward` 超时 1000ms → 3000ms
- 第744行`genie_buysweep` 超时 1000ms → 3000ms
- 第773行`arena_startarea` 超时 1000ms → 3000ms
- 第816行`fight_startlegionboss` 超时 1000ms → 3000ms
- 第873行`bottlehelper_claim` 超时 1000ms → 3000ms
- 第901行`task_claimdailyreward` 超时 1000ms → 3000ms
- 第910行`task_claimweekreward` 超时 1000ms → 3000ms
- 第998行`legion_signin` 超时 1000ms → 3000ms
- 第1017行`study_startgame` 超时 1000ms → 3000ms
- 第1050行`system_claimhangupreward` 超时 1000ms → 3000ms
- 第1086行`fight_starttower` 超时 2000ms → 5000ms
- 第1192行`car_getrolecar` 超时 1000ms → 5000ms
- 第1309行`car_refresh` 超时 1000ms → 5000ms
- 第1375行`car_claim` 超时 1000ms → 5000ms
- 第1471行`car_send` 超时 1000ms → 5000ms
**共19处超时调整**
---
## 🎉 总结
此次调整系统性地增加了所有任务的超时时间:
**通用任务**1000ms → 3000ms14个任务
**发车任务**1000ms → 5000ms4个任务
**爬塔任务**2000ms → 5000ms1个任务
**保持不变**role_getroleinfo 维持10000ms3处
### 核心改进
- 🎯 **提高稳定性**:减少超时错误
- 📈 **提升成功率**预期从20-50%提升到85%以上
- ⚖️ **合理权衡**:牺牲少量速度换取稳定性
- 🔍 **日志可见**ENABLE_BATCH_LOGS = true方便调试
### 后续建议
1. **小规模测试**先测5-10个token
2. **观察日志**:查看超时错误是否减少
3. **记录成功率**:填写测试数据表
4. **根据结果调整**
- 如果成功率>85%:逐步增加并发
- 如果仍有超时:进一步增加超时或降低并发
- 如果稳定后速度可接受:可以考虑略微减少超时
---
**请立即刷新页面并测试!** 🚀
期待您的测试反馈:
1. 成功率如何?
2. 还有多少超时错误?
3. 执行时间可接受吗?
4. 浏览器是否稳定?
我会根据您的反馈继续优化!