Limitazione imprevista della frequenza sulla vista Calendario nonostante le impostazioni elevate di throttling della API personalizzata

Descrizione

Dopo una recente ricostruzione di Discourse (self-hosted), riscontro costantemente limitazioni di frequenza (errori 429) per gli utenti durante la visualizzazione del calendario principale, anche se il mio sito ha un’attività molto bassa (1-2 utenti simultanei). Questo comportamento ha iniziato a manifestarsi dopo le mie ultime due ricostruzioni.

La mia configurazione di rate limiting (impostata in app.yml):

  • DISCOURSE_MAX_ADMIN_API_REQS_PER_MINUTE: 4 volte il valore predefinito
  • DISCOURSE_MAX_REQS_PER_MINUTE: 4 volte il valore predefinito
  • DISCOURSE_MAX_REQS_PER_DAY: 4 volte il valore predefinito
  • Nessun limite di frequenza per IP specificato.

Osservazioni

  • Nessun errore viene mostrato in /logs.
  • Non viene utilizzato alcun reverse proxy (container Let’s Encrypt standard e un record A sul dominio).
  • Solo le visualizzazioni del calendario sembrano innescare questa inaspettata limitazione di frequenza.
  • Non ci sono state modifiche all’attività degli utenti o ai plugin personalizzati.
  • Questo è iniziato solo dopo una recente ricostruzione di Discourse.
  • Amministratore > Log sono puliti al momento dell’incidente.

Risoluzione dei problemi finora

  • Confermata la presenza delle impostazioni personalizzate di rate limiting e che sono ben al di sopra dei valori predefiniti.
  • Provati diversi browser, svuotate le cache.
  • Creato un calendario di test con solo pochi eventi, ancora riproducibile.
  • Gli argomenti di meta.discourse.org suggeriscono che potrebbero esserci limiti di frequenza interni aggiuntivi non documentati che sovrascrivono i valori personalizzati dopo gli aggiornamenti.

Riferimenti


Richiesta

Potresti per favore:

  1. Confermare se ci sono nuovi o nascosti limitatori di frequenza che potrebbero influire sulle richieste in background o generate dai plugin dopo un recente aggiornamento/ricostruzione e, in tal caso, descrivere come sovrascriverli o regolarli.
  2. Spiegare perché i miei alti limiti di frequenza personalizzati non vengono rispettati per la visualizzazione del calendario.
  3. Suggerire ulteriori procedure di risoluzione dei problemi o modifiche alla configurazione, se presenti.

Grazie!

Sembra che questo possa essere correlato a Re-add full ics export - #9 by kelv perché 100 eventi sembrano essere visualizzati, poi dopo circa 2 minuti possono essere visualizzati altri grandi gruppi, e non appaiono gradualmente ma in grandi blocchi.

Modifica: Questo comportamento limitato dalla frequenza è gestibile per ora, ma diventa evidente quando si avanza molto; posso vedere tutti gli eventi della mia settimana corrente e tutti gli eventi della prossima, è se poi procedo alla settimana successiva che raggiungo il limite massimo.

Devo anche chiarire che il calendario completo degli eventi futuri v6 non era limitato dalla frequenza di richieste a questo livello, prima che impostassi le impostazioni personalizzate di throttling dell’API. Queste impostazioni di app.yml non hanno modificato il limite di frequenza visibile su FullCalendar :wink:

@kelv potresti dare un’occhiata a questo per favore?

Posso ancora riprodurre questo problema

Al momento non riusciamo a riprodurre il problema. A quale commit ti trovi? Quanti eventi hai?

Discourse latest-release +369

Docker_manager 3e5ec72d

Bbcode 633030d8

Categories suppressed d5550658

Who’s online 3fe319b8

Temi e Componenti

Default


[Category Banners]

Mostra banner nelle pagine delle categorie utilizzando i dettagli delle tue categorie esistenti. Scopri di più

[Clickable Topic]

Se vuoi modificare questo tema, devi inviare una modifica sul suo repository

[Custom Header Links (icons)]

Se vuoi modificare questo tema, devi inviare una modifica sul suo repository

[Discourse Gifs]

Se vuoi modificare questo tema, devi inviare una modifica sul suo repository

[Inline PDF Previews]

Se vuoi modificare questo tema, devi inviare una modifica sul suo repository

[Reader Mode]

Se vuoi modificare questo tema, devi inviare una modifica sul suo repository

44 la prossima settimana

nessuno dei circa 40 in caricamento la settimana dopo

FullCalendar ha iniziato a comportarsi bene

molti, penso che MAX_RESULTS abbia superato il suo limite ora dopo il 27 settembre. Devo aggiornare Full Calendar per visualizzare i miei eventi ogni volta che guardo

Mi dispiace ma non riesco a seguirti. Saresti in grado di fare un video di te mentre navighi nel calendario, per favore?

1 Mi Piace

su una PWA

1 Mi Piace

Dov’è quindi il 429?

Non credo che si tratti di quel tipo di limite di frequenza. Quando ho menzionato le impostazioni di limitazione della velocità dell’API, intendevo dire che il mio Discourse è configurato per gestire molti argomenti di eventi, ma la visualizzazione di FullCalendar non funziona bene come prima che il codice venisse unito

Mi scuso per la confusione

Modifica: ho modificato l’OP per riflettere la mancanza di errori 429

Sono sulle ultime versioni. Dal punto di vista dell’interfaccia utente, questo problema si è risolto da solo durante la notte. Ho aggiornato ieri sera, ma il problema non si è risolto immediatamente. Il numero totale di eventi che sono passati è di circa 270. Ora sono tornato a usare PWA…

La mia istanza Discourse è ora aggiornata. Ieri ho ricevuto una segnalazione da un utente separato della mia istanza secondo cui una visualizzazione della settimana futura non stava caricando tutti gli eventi. Avendo già notato che questo errore non influisce sull’interfaccia utente della visualizzazione della settimana corrente, ho cercato di individuare l’errore sul mio laptop. Di seguito è riportata la riproduzione video;

Ho ricostruito e questo problema continua a comparire quando si passa dalla settimana corrente alla settimana successiva.

Siamo stati in grado di diagnosticarlo?

L’aggiornamento di Discourse dagli ultimi 20 commit ha corretto questo bug

Non ho aggiornato, ma questo bug ha ricominciato a verificarsi

Modifica: sono tornato in PWA e il bug non si sta verificando

Modifica2: ricevo ancora l’errore nella console del browser sul laptop, non ho controllato il calendario