FreshRSS: Erkenntnisse und Empfehlungen zur Aktualisierung von RSS-Feeds
Am Wochenende habe ich FreshRSS auf meinem Server eingerichtet. Dabei handelt es sich um einen Open-Source-Feed-Reader, mit dem Nutzer ihre RSS-Feeds zentral verwalten und lesen können. Die Anwendung bietet eine benutzerfreundliche Oberfläche, zahlreiche Anpassungsmöglichkeiten und unterstützt die Integration unterschiedlicher Quellen, um aktuelle Inhalte effizient zu verfolgen. Anfangs war ich mit der Update-Logik der Feeds nicht […]
Am Wochenende habe ich FreshRSS auf meinem Server eingerichtet. Dabei handelt es sich um einen Open-Source-Feed-Reader, mit dem Nutzer ihre RSS-Feeds zentral verwalten und lesen können. Die Anwendung bietet eine benutzerfreundliche Oberfläche, zahlreiche Anpassungsmöglichkeiten und unterstützt die Integration unterschiedlicher Quellen, um aktuelle Inhalte effizient zu verfolgen.
Anfangs war ich mit der Update-Logik der Feeds nicht ganz vertraut, habe mich jedoch eingearbeitet. Nachfolgend teile ich meine Erkenntnisse und Empfehlungen zur Konfiguration.
Falls ihr vollen Zugriff auf den Server habt und die Cron-Konfiguration anpassen könnt, erstellt einfach den folgenden Cron-Job:
# Cron-Job wird alle 5 Minuten zwischen 7:00 und 23:55 Uhr ausgeführt (bspw. 7 Uhr und der letzte um 23:55 Uhr) */5 7-23 * * * www-data php /path/to/FreshRSS/app/actualize_script.php > /tmp/FreshRSS.log 2>&1
Ich habe den Cron-Job so eingestellt, dass die Feeds nur zwischen 7 und 24 Uhr aktualisiert werden. Da ich in der Regel zwischen Mitternacht und 7 Uhr nicht wach bin, erfolgt die Aktualisierung der Feeds dann erst am Morgen und bis etwa Mitternacht.
Nachfolgend einige Beispiele, wie der Cron-Job ausgeführt wird, wenn er so konfiguriert ist, dass er alle 5 Minuten zwischen 7:00 und 23:55 Uhr läuft:
- 7:00 Uhr
- 7:05 Uhr
- 7:10 Uhr
- 7:15 Uhr
- …
- 23:50 Uhr
- 23:55 Uhr
Die Ausführung erfolgt also alle 5 Minuten, aber die letzte Aktualisierung findet um 23:55 Uhr statt, bevor der Zeitrahmen (23:00 bis 23:55) endet.
Wichtig zu wissen ist, dass der Cron-Job die Feeds nicht direkt aktualisiert. Er startet lediglich den Aktualisierungsprozess in FreshRSS. FreshRSS überprüft dann intern, ob ein Feed basierend auf der letzten Aktualisierungszeit und der festgelegten Frequenz (z. B. alle 30 Minuten) aktualisiert werden muss. Diese Frequenz kann für jeden Feed individuell festgelegt oder über die Einstellungen -> Archivierung
mit der Option »Aktualisiere automatisch nicht öfter als« ein globaler Standardwert definiert werden. Persönlich habe ich dort 30 Minuten
eingestellt.
Mein Setup ist damit wie folgt:
- Der Cron-Job läuft alle 5 Minuten (*/5).
- Alle Feeds sind auf eine Aktualisierungsfrequenz von 30 Minuten eingestellt. (minimal möglicher Wert: 20 Minuten)
Beispielablauf:
- Letzte Aktualisierung eines Feeds: 09:06 Uhr.
- 09:30 Uhr (Cron-Job läuft):
- Letzte Aktualisierung des Feeds war um 09:06 Uhr.
- Seitdem sind 24 Minuten vergangen.
- Ergebnis: Der Feed wird nicht aktualisiert (30-Minuten-Frequenz noch nicht erreicht).
- 09:35 Uhr (Cron-Job läuft):
- Letzte Aktualisierung war um 09:06 Uhr.
- Seitdem sind 29 Minuten vergangen.
- Ergebnis: Der Feed wird nicht aktualisiert.
- 09:40 Uhr (Cron-Job läuft):
- Letzte Aktualisierung war um 09:06 Uhr.
- Seitdem sind 34 Minuten vergangen.
- Ergebnis: Der Feed wird jetzt aktualisiert (Frequenz von 30 Minuten überschritten).
Wer genau herausfinden möchte, wann die Feeds zuletzt aktualisiert wurden, kann dies über die FreshRSS-Datenbank überprüfen. Dazu einfach in die Datenbank einloggen und den folgenden MySQL-Befehl (<user>
anpassen) ausführen:
SELECT id, name, url, FROM_UNIXTIME(lastUpdate) AS last_update_readable FROM <user>_feed;
Output:
+----+--------------------------------------+------------------------------------------------------------------------------+----------------------+ | id | name | url | last_update_readable | +----+--------------------------------------+------------------------------------------------------------------------------+----------------------+ | 1 | FreshRSS | https://github.com/FreshRSS/FreshRSS/releases.atom | 2024-12-23 23:50:02 | | 2 | Test: Alles aus Geld | https://www.test.de/rss/geldanlage-banken/ | 2024-12-23 13:55:02 | | 3 | heise: Android | https://www.heise.de/thema/Android.xml | 2024-12-23 13:45:02 | [...]
Da mich die Update-Logik anfangs etwas verwirrt hat, habe ich mich entschlossen, meine Erkenntnisse in einem Blogbeitrag zu teilen, um den Prozess für andere besser verständlich zu machen. Übrigens nutze ich für den Abruf und die Darstellung der Feeds die App Read You auf meinem Android-Gerät.