Unerwartete Ratenbegrenzung in der Kalenderansicht trotz hoher benutzerdefinierter API-Drosselungseinstellungen

Beschreibung

Nach einem kürzlichen Discourse-Rebuild (selbst gehostet) trete ich durchgehend benutzerseitige Ratenbegrenzungen (429-Fehler) auf, wenn ich den Hauptkalender aufrufe, obwohl meine Website nur sehr geringe Aktivität aufweist (1–2 gleichzeitige Benutzer). Dieses Verhalten begann nach meinen letzten beiden Rebuilds aufzutreten.

Meine Ratenbegrenzungskonfiguration (wie in app.yml festgelegt):

  • DISCOURSE_MAX_ADMIN_API_REQS_PER_MINUTE: 4x Standard
  • DISCOURSE_MAX_REQS_PER_MINUTE: 4x Standard
  • DISCOURSE_MAX_REQS_PER_DAY: 4x Standard
  • Es ist keine Ratenbegrenzung pro IP-Adresse angegeben.

Beobachtungen

  • Im Verzeichnis /logs werden keine Fehler angezeigt.
  • Es wird kein Reverse-Proxy verwendet (Standard-Let’s Encrypt-Container und ein A-Eintrag für die Domain).
  • Nur Kalenderansichten scheinen diese unerwartete Ratenbegrenzung auszulösen.
  • Es gab keine Änderungen an der Benutzeraktivität oder benutzerdefinierten Plugins.
  • Dies begann erst nach einem kürzlichen Discourse-Rebuild.
  • Admin > Protokolle sind zum Zeitpunkt des Vorfalls sauber.

Bisherige Fehlerbehebung

  • Bestätigt, dass die benutzerdefinierten Ratenbegrenzungseinstellungen vorhanden und weit über den Standardwerten liegen.
  • Mehrere Browser ausprobiert, Caches gelöscht.
  • Testkalender mit nur wenigen Ereignissen erstellt, immer noch reproduzierbar.
  • meta.discourse.org-Themen deuten darauf hin, dass es nach Upgrades zusätzliche undokumentierte interne Ratenbegrenzungen geben könnte, die benutzerdefinierte Werte überschreiben.

Referenzen


Anfrage

Könnten Sie bitte:

  1. Bestätigen, ob es neue oder versteckte Ratenbegrenzer gibt, die Hintergrund- oder Plugin-generierte Anfragen nach einem kürzlichen Update/Rebuild beeinträchtigen würden, und falls ja, beschreiben, wie diese überschrieben oder angepasst werden können.
  2. Erläutern, warum meine hohen benutzerdefinierten Ratenbegrenzungen für die Kalenderansicht nicht beachtet werden.
  3. Weitere Fehlerbehebungs- oder Konfigurationsänderungen vorschlagen, falls vorhanden.

Vielen Dank!

Es scheint, dass dies mit Re-add full ics export - #9 by kelv zusammenhängen könnte, da 100 Ereignisse angezeigt werden und nach etwa 2 Minuten weitere große Stapel angezeigt werden können, und sie erscheinen nicht allmählich, sondern in großen Blöcken.

Bearbeitung: Dieses ratenbegrenzte Verhalten ist vorerst beherrschbar, wird aber deutlich, wenn man weit vordringt; Ich kann alle Ereignisse meiner aktuellen Woche und alle Ereignisse der nächsten Woche sehen, aber wenn ich zur nächsten Woche übergehe, stoße ich auf das harte Limit.

Ich sollte auch klarstellen, dass der kommende Full Calendar v6 für Veranstaltungen nicht in diesem Maße einer Ratenbegrenzung unterlag, bevor ich die benutzerdefinierten API-Drosselungseinstellungen vorgenommen habe. Diese app.yml-Einstellungen haben die Ratenbegrenzung, die bei FullCalendar sichtbar ist, nicht geändert :wink:

@kelv Könntest du dir das bitte ansehen?

Ich kann dies immer noch reproduzieren

Wir können das im Moment überhaupt nicht reproduzieren. Auf welchem Commit befinden Sie sich? Wie viele Ereignisse haben Sie?

Discourse latest-release +369

Docker_manager 3e5ec72d

Bbcode 633030d8

Categories suppressed d5550658

Who’s online 3fe319b8

Themes and Components

Default


[Category Banners]

Zeige Banner auf Kategorie-Seiten mit deinen vorhandenen Kategorie-Details an. Mehr erfahren

[Clickable Topic]

Wenn du dieses Theme bearbeiten möchtest, musst du eine Änderung in seinem Repository einreichen

[Custom Header Links (icons)]

Wenn du dieses Theme bearbeiten möchtest, musst du eine Änderung in seinem Repository einreichen

[Discourse Gifs]

Wenn du dieses Theme bearbeiten möchtest, musst du eine Änderung in seinem Repository einreichen

[Inline PDF Previews]

Wenn du dieses Theme bearbeiten möchtest, musst du eine Änderung in seinem Repository einreichen

[Reader Mode]

Wenn du dieses Theme bearbeiten möchtest, musst du eine Änderung in seinem Repository einreichen

44 nächste Woche

keine der ~40 nächste Woche

FullCalendar benimmt sich jetzt gut

viele, ich denke, MAX_RESULTS hat sein Limit nach dem 27. September überschritten. Ich muss den Kalender aktualisieren, um meine Ereignisse jedes Mal anzuzeigen, wenn ich nachsehe.

Es tut mir leid, aber ich kann Ihnen nicht folgen. Können Sie ein Video von sich erstellen, in dem Sie durch den Kalender navigieren?

1 „Gefällt mir“

auf einer PWA

1 „Gefällt mir“

Wo ist also die 429?

Ich glaube nicht, dass es sich um diese Art von Ratenbegrenzung handelt. Als ich API-Drosselungseinstellungen erwähnte, meinte ich eigentlich, dass mein Discourse so konfiguriert ist, dass es viele Ereignisthemen verarbeiten kann, aber die FullCalendar-Ansicht funktioniert nicht mehr so gut wie vor dem Zusammenführen des Codes.

Entschuldigung für die Verwirrung.

Bearbeitung: Ich habe den OP bearbeitet, um das Fehlen von 429-Fehlern widerzuspiegeln.

Ich verwende die neuesten Versionen. Aus der Benutzeroberfläche hat sich dieses Problem über Nacht von selbst behoben. Ich habe gestern Abend ein Update durchgeführt, aber das Problem hat sich nicht sofort behoben. Die Gesamtzahl der Ereignisse, die aufgetreten sind, beträgt etwa 270. Ich bin jetzt wieder zur Verwendung von PWA zurückgekehrt…

Meine Discourse-Instanz ist jetzt auf dem neuesten Stand. Ich hatte gestern einen Bericht von einem separaten Benutzer meiner Instanz, dass eine zukünftige Wochenansicht nicht alle Ereignisse geladen hat. Da mir bereits aufgefallen war, dass dieser Fehler die Benutzeroberfläche der aktuellen Wochenansicht nicht beeinträchtigt, habe ich versucht, den Fehler auf meinem Laptop zu lokalisieren. Unten sehen Sie die Videoreproduktion;

Ich habe neu aufgebaut und dieses Problem tritt weiterhin auf, wenn ich von der aktuellen Woche zur nächsten Woche wechsle.

Konnten wir es diagnostizieren?

Update von Discourse durch die letzten 20 Commits hat diesen Fehler behoben

Habe kein Update durchgeführt, aber dieser Fehler tritt wieder auf

Bearbeiten: Ging zurück zu PWA und der Fehler tritt nicht auf

Bearbeiten2: Erhalte weiterhin den Fehler in meiner Browserkonsole auf dem Laptop, habe den Kalender aber nicht überprüft