50.000 de ori pe lună? Apelurile excesive ale API au fost rezolvate.
Recent, un prieten a venit la mine şi mi-a spus că a găsit o problemă serioasă în culisele dezvoltatorului de cărţi zburătoare: /deschis-apis/bot/v3/info, această interfaţă se numeşte de sute de ori pe minut, şi de 50.000 de ori pe lună se va termina!

Cum ai aflat?
Prietenii din culisele "API Call Statistics" ale dezvoltatorului de carte zburătoare au văzut un număr excepțional de mare de apeluri pentru această interfață:
| Indicatori | Valoare |
| Numărul de apeluri zilnice | 43200 + ori |
| Sună în fiecare minut. | ~ 300 de ori |
| Consumul lunar estimat | Aproape de 50.000 de ori. |
Sunt robot. Cum pot să sun atât de des?
Cauzele profunde ale problemei
Am rulat codul de extensie OpenClaw și a găsit-o în două locuri:
1. Declanşarea controlului stării apel API
Funcția SondaFeishu () numește interfața botinfo pentru cărțile zburătoare de fiecare dată când întrebi despre starea robotului. Această funcție este numită în următoarele scenarii:
- Obțineți OpenID la pornire
- Atunci când starea de interogare a sistemului extern
- Când WebSocket este deconectat
2. Lipsa unui mecanism de cache
Codul original a fost "Întreabă fiecare apel," și nu a existat nici o cache. Chiar dacă ceri o stare de 10 ori, vei avea 10 apeluri API.
Solutii: mecanism cache 5 minute
Am adăugat un cache simplu la sonde.ts:
// 缓存配置:5分钟内不重复调用 API
const CACHE_TTL_MS = 5 * 60 * 1000;
const botInfoCache = new Map();
Logica de bază este simplă:
- Primul apel Cerere de cărţi zburătoare API
- Sună din nou în 5 minute. ○ Direct back cache (no new request initiated)
- Şi eşecul s-a înfundat. → Evitați cererile repetate atunci când eșecul
Efecte modificate
| Contrast | Înainte de a modifica | modificată |
|---|---|---|
| Fiecare cerere de stare | Sună la API. | Cache direct |
| Nu a reușit să încerce din nou | Remetrie nelimitată | Cache 5 minute |
| Consumul lunar estimat | 50000 + ori | ~ 300 de ori |
E simplu.: Un maxim de 1 apel pe 5 minute, 24 ore pe zi = 288 ori/luna, de aproximativ 3 500 de ori pe an. Limita iniţială de 50 de mii pe lună, nu se va termina!
Aplică scena
Acest program este deosebit de adecvat pentru:
- Utilizatori extinse cu OpenClaw
- Dezvolta propriul robot carte de zbor și apela interfata botinfo frecvent
- Scala API este urgentă și vrea să optimizeze numărul de apeluri
Rezumat
Flying Book API problema supra-alocare este în esență cauzată de lipsa unui mecanism de cache. Solutia este simpla: apelati interfata cu un cache.
Uneori cea mai simplă optimizare este cea mai eficientă.