← Volver a la lista

¿50.000 veces al mes? Las llamadas excesivas de la API finalmente se han resuelto.

itadol5j

Recientemente, un amigo vino a mí y dijo que encontró un problema serio en el backstage del desarrollador de libros voladores: /open-apis/bot/v3/info, esta interfaz se llama cientos de veces por minuto, y 50.000 veces al mes va a salir!

Flight Book API Call Monitor

¿Cómo lo averiguaste?

Amigos en el backstage "API Call Statistics" del desarrollador Flying Book vieron un número excepcionalmente alto de llamadas para esta interfaz:

IndicadoresValor
Número de llamadas diarias43200 veces más
Llama cada minuto~ 300 veces
Consumo mensual estimadoCerca de 50.000 veces.

No está: soy un robot. ¿Cómo puedo llamar tan a menudo?

Las causas profundas del problema

Corrí el código de extensión de OpenClaw y lo encontré en dos lugares:

1. Control de estado activa la llamada API

La función ProbeFeishu() llama a la interfaz botinfo para los libros voladores cada vez que se pregunta sobre el estado del robot. Esta función se denomina en los siguientes escenarios:

  • AbraID en la puesta en marcha
  • Cuando el estado de consulta del sistema externo
  • Cuando WebSocket está desconectado

2. Falta de un mecanismo de caché

El código original era "Preguntar cada llamada", y no había caché. Incluso si pide un estado de 10 veces, tendrá 10 llamadas de API.

Soluciones: mecanismo de caché de 5 minutos

Añadí un caché simple a la sonda.ts:

// 缓存配置:5分钟内不重复调用 API
const CACHE_TTL_MS = 5 * 60 * 1000;
const botInfoCache = new Map();

La lógica central es simple:

  • Primera llamada * Solicitud de libros voladores API*
  • Vuelve a llamar en 5 minutos. :: Caché de atrás directo (sin nueva solicitud iniciada)
  • El fracaso también obstruyó. → Evite las solicitudes repetidas al fracaso

Efectos modificados

ContrasteAntes de Modificarmodificada
Cada consulta de estadoCall APICaché directa
Failed to try againRetry ilimitadoCache 5 minutos
Consumo mensual estimado50000+ veces~ 300 veces

Es simple.: Un máximo de 1 llamada por 5 minutos, 24 horas al día = 288 veces al mes, aproximadamente 3.500 veces al año. ¡El límite original de 50 de los grandes/mes, no se agota!

Apply scene

Este programa es especialmente adecuado para:

  • Usuarios extendidos con OpenClaw
  • Desarrolle su propio robot de libro volador y llame a la interfaz botinfo con frecuencia
  • La escala API es urgente y quiere optimizar el número de llamadas

Resumen

El problema de sobreubicación de la API de libro volador es esencialmente causado por la falta de un mecanismo de caché. La solución es simple: llame a la interfaz con un caché.

A veces la optimización más simple es la más eficaz.