Forge: Neustart von Queues oder Daemons via Deployment-Script
Manchmal kommt es zu Problemen mit der Queue. Es kann passieren dass die Datenbank-Verbindung des Redis-Workers abbricht, was einen Neustart des Queue-Workers erforderlich macht.
Dieses Fehlerbild zeigt sich durch das Logging des Redis-Workers:
In Connection.php line 825:
SQLSTATE[HY000] [2002] Connection refused (Connection: mysql, SQL: select *
from `cache` where `key` in (illuminate:queue:restart))
In Connector.php line 66:
SQLSTATE[HY000] [2002] Connection refused
Mithilfe das Forge-Schedules kann über einen einfachen Command der Redis-Worker jede Nacht neu gestartet werden. Was die autonome Stabilität der Webapp verbessert.
Command zum Restart von Queues oder Deamons:
sudo -S supervisorctl restart worker-5432987:worker-5432987_00
Die ID des Queue-Workers oder des Deamons kann über den Status-Dialog (Button: "Check Worker Status") ausfindig gemacht werden:

Daraufhin wird ein Dialog wie der folgende angezeigt, in dem Sie den Namen des Arbeiters sehen.

Den Command (sudo -S supervisorctl restart worker-5432987:worker-5432987_00
) fügen wir nun im Forge Scheduler ein, zur nächtlichen Ausführung:

Dieser Command auch in Deployment-Script untergebracht werden.