Límites de tasa de API

Hey all,
I’ve come across several (somewhat-old) articles on this forum that outline API rate limits (ex: Global rate limits and throttling in Discourse). I’m interested in this because, during the customization of our site, we’re making several API calls related to users and topics, and I’d like to ensure we keep the calls to a minimum.

Are these settings still configurable via the Admin panel? I haven’t come across anything thus far that relates to the Discourse API rate limits.

If not, is there a way to monitor the request activity somewhere?

Thank you in advance!

2 Me gusta

Estos ajustes de límite de tasa de la API no se configuran a través del panel de administración, sino que los agregará al archivo app.yml en el servidor donde está alojado su sitio de Discourse. Por lo tanto, tendrá que conectarse por SSH a su servidor para realizar el cambio si está autoalojado.

3 Me gusta

@blake ¡gracias por la respuesta! Mi equipo en realidad va a usar Discourse para el alojamiento, así que no tenemos ninguno de nuestros propios archivos de configuración. ¿Hay alguna vía para ver o ajustar los límites de la API si esta es la ruta que seguimos?

:+1:

Si está en la versión empresarial, podemos ajustar algunos de estos límites para usted, además de brindarle orientación sobre la API para que podamos reducir la carga de uso de su API.

Lo que recomendamos es que su aplicación que realiza las llamadas a la API maneje los errores 429 y luego verifique el encabezado Retry-After que se recibe, y esto le permitirá saber cuándo puede comenzar a realizar solicitudes nuevamente.

@blake ¡Gracias de nuevo por la información! Creo que mi equipo está bastante conforme con los límites de tasa estándar actuales definidos por Discourse. ¿Puedes compartir cuáles son estos límites? Hasta ahora no he podido encontrar una lista definitiva.

Sí, los límites predeterminados se enumeran aquí para los planes pro/business.

@blake una vez más, ¡gracias por la información! Esto está algo relacionado, pero ¿sabes si hay un cronograma para agregar personalizaciones de serializador a nivel de temas/componentes? He visto que esa función se menciona en este foro aquí y allá durante el último año, pero sé que aún no se ha implementado.

Pregunto porque actualmente estamos obteniendo datos de usuario por tema en la lista de temas, lo que puede acumularse una vez que nuestra plataforma tenga más y más usuarios. Agregar ciertas partes de datos del modelo de usuario a ciertos serializadores podría ayudar a reducir las llamadas a la API que actualmente tenemos que hacer.

No tengo conocimiento de un cronograma para eso.

Sin embargo, recomiendo usar el plugin data-explorer para solicitudes de datos personalizadas como esta. Lo que puedes hacer es crear tu propia consulta SQL personalizada y guardarla para que obtenga un ID. Luego, puedes hacer una llamada a la API a esa consulta guardada y se ejecutará y devolverá el JSON que buscas en una sola solicitud.