Dem hoergen - Blog

unendliche seiten in den elektrischen wellen

Dem hoergen - Blog

  • Startseite
  • hyperblog
  • hoergen
  • moosiqpipl
  • Klangwerk
  • Forum
  • Kontakt
  • Anmelden

Friendica Worker - Vom CRON zum Daemon

von hoergen am Jul 24, 2020 in Programme, Linux, DecentraliceIT, Friendica

Die Worker in Friendica sorgen dafür, dass Nachrichten ausgeliefert und Nachrichten abgeholt werden. Es gibt verschiedene Wege, diese zu konfigurieren, da es auch die unterschiedlichsten Serverumgebungen gibt.

 

  1. Folgende flexible Möglichkeiten bietet Friendica
  2. Worker werden regelmäßig über CRON gestartet
  3. Worker werden über einen externen CRON Dienst aufgerufen
  4. Worker werden durch den Aufruf der Friendica Seiten gestartet (Frontendworker)
  5. Worker werden von einem eigenen System Daemon (bin/daemon.php) aufgerufen

 

Generell werden Worker Aufgaben priorisiert (Nachrichten ausliefern/abholen, Aktualisieren von Kontakten, usw). Dazu kann man dann noch einen sogenannten “Fastlane” Worker aktivieren, der dafür sorgt, dass Prozesse mit höherer Priorität nicht von Prozessen niedriger Priorität blockiert werden. Insgesammt ein sehr ausgeklügeltes System.

 

Bisher hatte ich meine Worker durch einem CRON Job konfiguriert. Da aber bei einer aktuellen Friendica Konfiguration die Verwendung von bin/daemon.php als Systemservice empfohlen wird.

 

Der Webserver läuft unter dem Benutzer www-data und braucht daher auch die entsprechende Berechtigung bei CRON oder später bei der daemon.php indem man den aktuellen Benutzer ersetzt mit sudo -u www-data <Befehl>. In diesem Artikel arbeite ich als root Benutzer.

 

Zuerst den CRON Service deaktivieren. mit sudo -u www-data crontab -e die CRON Konfiguration aufrufen und mit einem # den entsprechenden Eintrag erstmal auskommentieren. Danach CRON neu starten mit `sudo service cron restart` . Wenn alles eine Weile läuft, dann kann man die auskommentierte Zeile dann auch entfernen. Ich belasse solche Konfigurationen einfach zur Sicherheit immer noch eine Weile, um unter Umständen recht schnell den ursprünglichen Zustand wieder herstellen zu können.

 

In der Datei config/local.config.php muss in der Sektion ‘system’ ein Eintrag 'pidfile' => '/path/to/daemon.pid', erstellt werden. Diese Datei habe ich ausserhalb des Webverzeichnisses in einem eigenen Verzeichnis erstellt.

 'system' => [
'default_timezone' => 'UTC',
'language' => 'de',
'worker_jpm' => 'true',
...
...
'pidfile' => '/Path/to/pid/daemon.pid',
.....

 

Schliesslich kann man von Hand den Daemon aus dem Friendica Basisverzeichnis starten mit sudo -u www-data bin/daemon.php start starten.


Wenn das alles geklappt hat, dann sollte man daemon.php noch als System Service einrichten, so dass der Daemon bei jedem Systemneustarte automatisch mitgestartet wird.

# Contents of /etc/systemd/system/friendicaworkerdaemon.service
[Unit]
Description=Friendica Worker Daemon
After=network.target

[Service]
Type=simple
Restart=always
User=www-data
Group=www-data
WorkingDirectory=/Pfad/zum/Friendica/Basisverzeichnis/
ExecStart=/usr/bin/php bin/daemon.php start

[Install]
WantedBy=multi-user.target

 

Schliesslich stoppen wir den daemon.php wieder von Hand im Friendica Basisverzeichnis mit

sudo -u www-data bin/daemon.php stop

 

Dann wird systemd Daemon angewiesen alle Konfigurationsdateien neu einzulesen
systemctl daemon-reload

 

Der friendicaworkerdaemon Service wird aktiviert
systemctl enable friendicaworkerdaemon.service

 

Und nun wird der friendicaworkerdaemon Service gestartet
systemctl start friendicaworkerdaemon.service

 

Wenn alles geklappt hat, dann meldet sich die Eingabeaufforderung wieder, ohne einen Fehler anzuzeigen.

Falls bei der Überprüfung mit systemctl status friendicaworker.service der Fehler error starting start-limit-hit kommt, dann hilft meist der Befehl systemctl reset-failed friendicaworker.service  und danach wieder ein systemctl start friendicaworker.service . Danach kann man nochmal den Status überprüfen.

 

 

 

Blogged on hoergen - hyperblog.de
Tags: Tags: DebianDecentralizeITFederationFediverseFriendicaLinuxWebserversystemd
This entry was posted by hoergen and filed under Programme, Linux, DecentraliceIT, Friendica. Tags: Debian, DecentralizeIT, Federation, Fediverse, Friendica, Linux, Webserver, systemd.
  • « Firefox beschleunigen - Grafik Chip nutzen
  • Anleitung für eine nachhaltige und gesicherte Internet PR-Strategie »

1 Kommentar

Benutzerwertungen
5 Stern:
 
(1)
4 Stern:
 
(0)
3 Stern:
 
(0)
2 Stern:
 
(0)
1 Stern:
 
(0)
1 Bewertung
Durschn. Benutzerwertung:
(5.0)

Kommentar von: Marco [Besucher]

In der Service-Datei sollte

[Service]
Type=simple

durch

[Service]
Type=forking

werden laut https://unix.stackexchange.com/questions/513972/how-to-fix-start-limit-hit-trying-to-start-gunicorn-on-ubuntu-18. Sonst wird immer wieder der Neustart versucht trotz laufendem Child-Prozess.

 

 

21.07.22 @ 16:52 Auf diesen Kommentar antworten


Formular wird geladen...

Dem hoergen - Blog ist ein Ventil und Dokumentation des Dem Kollektivs im Kontinuum der elektrischen Wellen des Internets.
Tutorials impressum Haftungsauschluss hoergen on Friendica

Neueste Posts

  • Der Weg zur informierten Gesellschaft
  • Limitation Game: Systemd - CPUQuota
  • Touchpad / Touchscreen Gesten in Kubuntu
  • Warum ist die Gesellschaft so kaputt? Und was ist Glück?
  • Der Film Casablanca & die bemerkenswerten Geschichten
  • Prä-, Post-, Bullshit-Informationszeitalter
  • Happy Birthday hyperblog zum 18.
  • Real-time Noise Suppression Plugin - RNNoise
  • Klima - künstlicher Photosynthese und Wirtschaft auf Pflanzen umstellen - Hörempfehlung
  • Digitalisierung, Homeoffice und Algorithmen - Hörempfehlung
  • Vortrag Videoproduktion mit FLOSS beim SFD
  • KDE Fenster beim Mauszeiger öffnen
  • Snap aus Ubuntu & Kubuntu entfernen
  • Dark Mode überall im Web
  • Wenn das Umweltbewusstsein reinkickt
  • Das Märchen vom klimaneutralen Holz
  • Bereit machen für das »Klima-Endspiel«
  • Die Corona Komplettsicht
  • Barrier statt Synergy - Maus & Tastatur zwischen zwei Computern teilen
  • Texteditor Kate sortieren
  • Das immer wieder verlorene Wissen
  • Alternative Energien. Dezentral. Überall.
  • Kryptowährungen & Blockchain aus diesem Blog
  • Eine tmux.conf Konfiguration
  • Beim ssh login tmux aufrufen
  • Plugins - Windows VSTs 32/64 Bit mit YaBridge | Linux
  • Weniger Deutschland mehr USA
  • Schon wieder CDU? Bereichern sich Kohle und Kernkraft Lobby am russischen Angriffskrieg?
  • Eskalation - warum nukleare Stromerzeugung lebensbedrohlich ist
  • PeerTube 4.1 und Generelles über die Privatssphäre
  • Moderne Zeiten, Individuen & Gesellschaft
  • NFT und die Aufregung
  • Was ist Pipewire
  • Ich und die toxische Gesellschaft
  • Siebzehn Jahre hyperblog - Feiereialter Alter!
  • Agora Media - Diskurs der Demokratie
  • Teuflisch gute Rettung, die AVM FRITZ!Box 6660 Cable
  • Aggressoren auf der Love World Peace Parade in Berlin
  • Kommando zurück - Bash History Tipps
  • Apple - Altruismus oder knallhartes Geschäftsmodell?
  • Work-Life-Balance und die 4 Tage Woche - Eine Meinung
  • Linux Musikproduktion - Audio & Routing
  • Open Source Voice Assistants
  • Chia - Elektroschrott statt Energie
  • PoW, PoS und Zinsen bei Kryptowährungen
  • Du hast doch Ahnung von Computern - Support
  • Wohnungsenteignung
  • libinput & Mausgesten in KDE
  • KDE Mausklick "Problem"
  • Obsidian - Error file watchers
  • Der Weg ist am Ziel
  • Nextcloud 21 Update www-data Problem
  • Tutorial - BigBlueButton - Rundgang und ein einfacher Meeting Leitfaden
  • Fragen zu Artikeln oder Themen aus dem Blog
  • Digitale Währung, Stablecoin & Kryptowährung
  • Schöner aussehen mit Nanett
  • Low Latency für die Musikproduktion
  • Obsidian - Markdown your Power
  • Was sind dApps
  • Live online jammen mit SonoBus
  • Lieber '91 als '21
  • Das Sterben der Communities
  • Messenger Wechsel - Whatsapp wird zu Facebook
  • Audio und Video nachträglich synchronisieren in Sekunden
  • Internet Verkehrsnachrichten
  • Chaos Communication Congress 37C3 / C3One
  • Tutorial - Jamulus Client Installation unter Kubuntu 20.04
  • Multicore Compression bei Zip & Co
  • Tutorials, Videos und Musik
  • Dolphin - Konsole im aktuellen Pfad
  • Interessantes zu Video, Audio, Codecs, Container und Consorten
  • JACK Audio einfach mit KX Studio
  • Neuer Song: Habanera (Deluge) Odo Sendaidokai
  • Dein Video Tutorial Turbo - Firefox Youtube Addon
  • Zinsen im Jahre 2020 bekommen - Staking
  • Tutorial Firefox Suchmaschinen und Shortcuts ganz einfach
  • Friendica Hackathon 25.09.2020
  • Friendica 2020.09 Red Hot Poker ist fertig
  • Keine Panik - Digitalisierung von Schulen
  • ZDFinfo "Bitcoin Big Bang - 800 Millionen Dollar verschwinden"
  • Lasst die Profis ran - Party im Volkspark Hasenheide
  • Firefox beschleunigen - Grafik Chip nutzen
  • Friendica Worker - Vom CRON zum Daemon
  • Anleitung für eine nachhaltige und gesicherte Internet PR-Strategie
  • tmux ein Windowmanager für die Konsole
  • CPUfreq Plasma Widget für KDE
  • Warum Vorratsdatenspeicherung dumm ist
  • Timeshift Snapshot Tool
  • Aufarbeitung der Kritiken an Rezos Presse Video
  • youtube-dl unter Kubuntu 20.04 - Python Problem
  • Klimberli Deluge by Odo Sendaidokai
  • Favoriten im KDE Startmenü löschen
  • Spitfire Audio unter Linux
  • Tempelse
  • Für eine bessere Welt ohne Diskriminierung - Black Lives Matter !
  • LinVST - Windows VSTs einrichten
  • Rezos neues Video zu Verschwörungsmythen und der Presse
  • LinVST unter Wine für Bitwig compilieren
  • apt - Befehlsreferenz
  • Community, Influencer und Vampire

XML-Feeds

  • RSS 2.0: Beiträge
  • Atom: Beiträge
  • RDF: Beiträge
  • RSS 0.92: Beiträge
What is RSS?

XML-Feeds

  • RSS 2.0: Beiträge
  • Atom: Beiträge
  • RDF: Beiträge
  • RSS 0.92: Beiträge
What is RSS?

©2023 by Dem Sir hoergen • Kontakt • Hilfe • CMS