Warum werden Statistiken nicht in Echtzeit aktualisiert?

Hallo, wir bauen ein Frontend um die Discourse-API und sind auf ein seltsames Verhalten gestoßen, da Statistiken an einigen Stellen nicht in Echtzeit aktualisiert werden.

  • Zum einen haben wir festgestellt, dass beim Abrufen von /directory_items.json?period=all&order=likes_given die Statistiken nicht sofort aktualisiert werden, wenn ein Benutzer einige Likes vergibt.
  • An anderer Stelle, beim Abrufen der Benutzerzusammenfassungsstatistiken durch Abrufen von /u/<user>/summary.json, scheinen die Statistiken nicht korrekt oder zumindest nicht in Echtzeit aktualisiert zu werden.

Wir verwenden das Bitnami-Docker-Image, um Discourse auszuführen. Wir sind uns nicht sicher, ob dieses Problem mit diesem speziellen Image zusammenhängt oder ob dies ein erwartetes Verhalten der Discourse-API selbst ist.

Das Docker-Image verwendet etwas namens Sidekiq, das wir als Ursache des Problems vermuten. Wir haben versucht, die Aufgabe auszuführen, die uns korrekt erschien (Jobs::DashboardStats), um die Statistiken zu aktualisieren, aber ohne Erfolg. Statistiken werden auch nach dem Auslösen der geplanten Aufgaben nicht aktualisiert. Gibt es eine andere Aufgabe, die damit zusammenhängt, oder suchen wir an der falschen Stelle?

Mit freundlichen Grüßen,
Manolo

Alle guten Plattformen unterscheiden zwischen Dingen, die absolut aktuell sein müssen, und Dingen, die wahrscheinlich warten können und Ressourcen sparen.

Directory Items scheint stündlich aktualisiert zu werden. Das bedeutet, dass es viel günstiger ist, jedem einzelnen Benutzer dasselbe Ergebnis anzuzeigen, anstatt es jedes Mal neu zu berechnen, wenn ein Benutzer darauf zugreift.

Der Quellcode ist Ihr Freund:

Und ja, Sie könnten diese Häufigkeit möglicherweise mit einem einfachen Plugin erhöhen, aber seien Sie sich der Auswirkungen auf Ressourcen und Leistung bewusst.

4 „Gefällt mir“

In Ordnung, das war auch unser Gedanke, worum es bei dem Problem ging. Ich habe vergessen, den Quellcode zu überprüfen, da ich nicht erwartet hatte, dass er dort zu finden ist, obwohl das absolut Sinn ergibt!

Vielen Dank für die schnelle Antwort!

1 „Gefällt mir“

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.