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?
These API rate limit settings are not configured via the admin panel, but you will add them to the app.yml file on the server where your discourse site is hosted. So you will have to ssh into your server to make the change if you are self hosted.
@blake grazie per la risposta! Il mio team si affiderà a Discourse per l’hosting, quindi non abbiamo file di configurazione. Ci sono modi per visualizzare o modificare i limiti dell’API se questa è la strada che intraprendiamo?
Se sei su enterprise possiamo modificare alcuni di questi limiti per te, oltre a fornire una guida API in modo da poter ridurre il carico di utilizzo della tua API.
Quello che consigliamo è di far gestire alla tua app che effettua le chiamate API gli errori 429 e quindi controllare l’intestazione Retry-After che viene ricevuta e questo ti farà sapere quando potrai ricominciare a effettuare richieste.
@blake grazie ancora per le informazioni! Penso che il mio team sia più che soddisfatto dei limiti di frequenza standard attuali definiti da Discourse. Puoi condividere quali sono questi limiti? Finora non sono riuscito a trovare un elenco definitivo.
@blake ancora, grazie per le informazioni! Questo è in qualche modo correlato, ma sai se c’è una tempistica per aggiungere personalizzazioni del serializzatore a livello di temi/componenti? Ho visto quella funzionalità menzionata in questo forum qua e là nell’ultimo anno, ma so che non è stata ancora implementata.
Chiedo perché attualmente stiamo recuperando i dati dell’utente su base per-argomento nell’elenco degli argomenti, il che può sommarsi una volta che la nostra piattaforma avrà sempre più utenti. L’aggiunta di determinati pezzi di dati del modello utente a determinati serializzatori potrebbe aiutare a ridurre le chiamate API che stiamo attualmente effettuando.
Non sono a conoscenza di una tempistica per questo.
Tuttavia, consiglio di utilizzare il plugin data-explorer per richieste di dati personalizzate come questa. È possibile creare una propria query SQL personalizzata e salvarla in modo che ottenga un ID. Quindi è possibile effettuare una chiamata API a tale query salvata ed essa verrà eseguita e restituirà il JSON desiderato in un’unica richiesta.