50,000 razy w miesiącu? Nadmierne rozmowy API w końcu zostały rozwiązane.
Ostatnio, przyjaciel przyszedł do mnie i powiedział, że znalazł poważny problem za kulisami latającej książki deweloper: / open- apis / bot / v3 / info, ten interfejs jest nazywany setki razy na minutę, i 50.000 razy w miesiącu to się skończy!

Jak się dowiedziałaś?
Przyjaciele z "API Call Statistics" za kulisami Latającego Dewelopera Książki widzieli wyjątkowo dużą liczbę połączeń dla tego interfejsu:
| Wskaźniki | Wartość |
| Liczba połączeń dziennych | 43200 + razy |
| Dzwoń co minutę. | 300 razy |
| Szacowana miesięczna konsumpcja | Prawie 50 000 razy. |
Jestem robotem. Jak mogę dzwonić tak często?
Podstawowe przyczyny problemu
Sprawdziłam kod rozszerzeń OpenClaw i znalazłam go w dwóch miejscach:
1. Sprawdzanie stanu wywołania API
Funkcja probeFeishu () wywołuje interfejs botinfo dla latających książek za każdym razem, gdy pytasz o status robota. Funkcja ta jest wywołana w następujących scenariuszach:
- Pobierz OpenID przy starcie
- Gdy zewnętrzny system stan zapytania
- Kiedy WebSocket jest odłączony
2. Brak mechanizmu buforowego
Oryginalny kod brzmiał "Pytaj o każde połączenie" i nie było pamięci podręcznej. Nawet jeśli poprosisz o 10 razy, będziesz miał 10 telefonów API.
Rozwiązania: 5 minutowy mechanizm pamięci podręcznej
Dodałem prosty cache do probe.ts:
// 缓存配置:5分钟内不重复调用 API
const CACHE_TTL_MS = 5 * 60 * 1000;
const botInfoCache = new Map();
Podstawowa logika jest prosta:
- Pierwsze wezwanie Prośba o latające książki API Wyniki Cache
- Zadzwoń za 5 minut. ■ Bezpośrednia pamięć podręczna (nie uruchomiono nowego wniosku)
- Niepowodzenie również zatkało się. → Unikaj powtarzających się żądań w przypadku niepowodzenia
Zmodyfikowane efekty
| Kontrast | Przed modyfikacją | zmodyfikowany |
|---|---|---|
| Każde zapytanie o status | Zadzwoń do API | Bezpośrednia obudowa |
| Nie udało się spróbować ponownie | Nieograniczony ciąg | Cache 5 minut |
| Szacowana miesięczna konsumpcja | 50000 + razy | 300 razy |
To proste.: Maksymalnie 1 połączenie na 5 minut, 24 godziny na dobę = 288 razy na miesiąc, około 3500 razy na rok. Oryginalny limit 50 tysięcy miesięcznie, nie skończy się!
Zastosuj scenę
Program ten jest szczególnie odpowiedni dla:
- Użytkownicy rozszerzeni OpenClaw
- Rozwijaj swój własny latający robot książki i często dzwoń do interfejsu botinfo
- Skala API jest pilna i chce zoptymalizować liczbę połączeń
Streszczenie
Problem nadmiernej alokacji API Flying Book wynika głównie z braku mechanizmu pamięci podręcznej. Rozwiązanie jest proste: wywołać interfejs z pamięci podręcznej.
Czasami najprostsza optymalizacja jest najbardziej skuteczna.