50.000 kali sebulan? Panggilan berlebihan API akhirnya diselesaikan.
Baru-baru ini, seorang teman datang kepada saya dan mengatakan ia menemukan masalah serius di belakang panggung pengembang buku terbang: /open-apis/bot/v3/info, antarmuka ini disebut ratusan kali per menit, dan 50.000 kali sebulan akan habis!

Bagaimana kau tahu?
Teman-teman di API Panggilan Statistik" di belakang panggung Pengembang Buku Terbang melihat jumlah panggilan yang luar biasa tinggi untuk antarmuka ini:
| Penunjuk Penunjuk Penunjuk | Nilai |
| Nomor panggilan harian | 43200+ kali |
| Panggilan setiap menit | 300 kali |
| Perkiraan konsumsi bulanan | Hampir 50.000 kali. |
Aku robot. Bagaimana aku bisa sering menelepon?
Akar penyebab masalahnya
Aku menjalankan kode ekstensi buku terbang OpenClaw dan menemukannya di dua tempat:
1. Status cek cek pemicu panggilan API
Fungsi probeFeishu () menyebut antarmuka botinfo untuk buku terbang setiap kali Anda bertanya tentang status robot. Fungsi ini disebut dalam skenario berikut:
- Luncurkan ID Terbuka pada permulaan
- Ubuntu Ketika status pertanyaan sistem eksternal
- When WebSocket diputus
2. Kurangnya mekanisme cache
Kode aslinya adalah "Tanyakan setiap panggilan", dan tidak ada cache. Bahkan jika Anda meminta keadaan 10 kali, Anda akan memiliki 10 API panggilan.
Solusi: 5 menit mekanisme cache
Aku menambahkan cache sederhana ke prob.ts:
// 缓存配置:5分钟内不重复调用 API
const CACHE_TTL_MS = 5 * 60 * 1000;
const botInfoCache = new Map();
Logika intinya sederhana:
- Panggilan Pertama Permintaan untuk buku terbang API
- Panggil lagi dalam 5 menit. ○ Cache belakang langsung (tidak ada permintaan baru yang dimulai)
- Gagal juga tersumbat. → Hindari permintaan berulang ketika gagal
Efek yang diubah
| Kontras | Sebelum Ubahsuai | Diubahsuai |
|---|---|---|
| Setiap pertanyaan status | Panggilan API | Cache Langsung Cache |
| Gagal untuk mencoba lagi | Coba Lagi Tanpa Batas | Cache Cache 5 Menit |
| Perkiraan konsumsi bulanan | 20,000+ kali | 300 kali |
Sederhana saja.Maksimum 1 panggilan per 5 menit, 24 jam per hari = 288 kali/bulan, kira-kira 3.500 kali setahun. Batas 50 ribu bulan yang asli, tidak akan habis!
Terapkan adegan
Program ini sangat cocok untuk:
- Pengguna User dari OpenClaw
- Mengembangkan robot buku terbang Anda sendiri dan sering menyebut antarmuka botinfo
- Skala API mendesak dan ingin mengoptimalkan jumlah panggilan
Ringkasan
Masalah over-alokasi Buku Terbang API pada dasarnya disebabkan oleh kurangnya mekanisme cache. Solusinya sederhana: hubungi antarmuka dengan sebuah cache.
Kadang-kadang optimasi paling sederhana adalah yang paling efektif.