50 000 gånger per månad? API: s överdrivna samtal har äntligen lösts.
Nyligen kom en vän till mig och sa att han hittade ett allvarligt problem i bakgrunden av den flygande bokutvecklaren: /open-apis /bot / v3 / info, kallas detta gränssnitt hundratals gånger per minut, och 50 000 gånger per månad kommer det att springa ut!

Hur upptäckte du?
Vänner i "API Call Statistics" backstage av Flying Book Developer såg ett exceptionellt stort antal samtal för detta gränssnitt:
| Indikatorer | Värde |
| Antal dagliga samtal | 43200+ gånger |
| Ring varje minut | ~ 300 gånger |
| Uppskattad månatlig konsumtion | Nära till 50 000 gånger. |
Han är borta: Jag är en robot. Hur kan jag ringa så ofta?
Grundorsakerna till problemet
Jag körde OpenClaws flybook-förlängningskod och hittade den på två ställen:
Status check trigger API call
ProbeFeishu()-funktionen kallar botinfo-gränssnittet för flygande böcker varje gång du frågar om robotstatus. Denna funktion kallas i följande scenarier:
- Få OpenID på start
- När extern systemfråga status
- När WebSocket kopplas bort
Brist på en cache mekanism
Den ursprungliga koden var "Fråga varje samtal", och det fanns ingen cache. Även om du ber om ett tillstånd av 10 gånger, kommer du att ha 10 API-samtal.
Lösningar: 5 minuters cache-mekanism
Jag lade till en enkel cache till probe.ts:
// 缓存配置:5分钟内不重复调用 API
const CACHE_TTL_MS = 5 * 60 * 1000;
const botInfoCache = new Map();
Kärnlogiken är enkel:
- Första samtalet Begäran om flygande böcker API Cache resultat
- Ring igen på 5 minuter. Direct back cache (ingen ny begäran initierad)
- Misslyckandet täppte också. Undvik upprepade förfrågningar när misslyckande
Ändrade effekter
| Kontrast | Innan ändra | modifierad |
|---|---|---|
| Varje statusfråga | Ring API | Direkt Cache |
| Misslyckades med att försöka igen | Obegränsad retry | Cache 5 minuter |
| Uppskattad månatlig konsumtion | 50000+ gånger | ~ 300 gånger |
Det är enkelt.Högst 1 samtal per 5 minuter, 24 timmar per dag = 288 gånger / månad, cirka 3 500 gånger per år. Den ursprungliga 50 grand / månad gränsen, det kommer inte att gå ut!
Applicera scenen
Detta program är särskilt lämpligt för:
- Användare utökas med OpenClaw
- Utveckla din egen flygande bokrobot och ring botinfo-gränssnittet ofta
- API-skalan är brådskande och vill optimera antalet samtal
Sammanfattning
Flygande bok API: s överallokeringsproblem orsakas i huvudsak av bristen på en cache-mekanism. Lösningen är enkel: ring gränssnittet med en cache.
Ibland är den enklaste optimeringen den mest effektiva.