Come disabilitare il rate limiting da un singolo IP

Ciao, sto riscontrando un problema in cui il mio sito principale chiama Discourse molto spesso (poiché uso l’SSO di Discourse, applico il blocco double-ignore e così via)… e vado incontro a limiti di velocità a destra e a sinistra. :frowning:

La buona notizia è che il sito chiamante ha un IP fisso… quindi esiste un modo per mettere in whitelist globalmente tutte le richieste API da un IP specifico, in modo da non attivare mai il limite di velocità?

In realtà, in generale, esiste un modo per disattivare tutti i limiti di velocità? Non permetto agli utenti di avere le proprie chiavi API, quindi in realtà voglio solo che la mia app possa chiamare Discourse ed eseguire qualsiasi operazione, in qualsiasi momento. Al momento, il limite di velocità mi sta solo creando problemi.

Stai memorizzando nella cache qualcosa tra una richiesta e l’altra?

Sì, esatto. Ho implementato una cache locale per tenere traccia degli ID dei membri di Discourse in relazione agli ID principali del mio sito e monitoro l’ultima volta in cui ho eseguito alcune azioni, così da non dover chiamare l’API inutilmente.

Tuttavia, quando il mio sito principale è molto trafficato, ci sono molti membri che entrano ed escono dai forum. Dato che ho implementato il doppio ignoramento per simulare il blocco, il mio sito deve effettuare una serie di chiamate API per ogni persona presente nella lista di blocco di qualcuno. Se uno dei miei membri ha bloccato 5 persone, questo può facilmente tradursi in 15-20 chiamate API.

è il limite che sembra tu voglia aumentare.

Un approccio migliore potrebbe essere aggiungere un plugin per introdurre un endpoint sync_blocks, in modo da avere bisogno di una sola chiamata API per ogni modifica all’elenco.

Bello, non conosco queste impostazioni ma le esaminerò! Grazie per il consiglio.