Ich fange an, alle unsere Systeme auf Upstart umzustellen, um unsere verschiedenen Anwendungsprozesse zu verwalten. Eine Sache, die mir ständig fehlt, ist die Fähigkeit, ein anderes Signal an den Prozess stop
oder restart
Ereignisse zu senden .
Zum Beispiel führen wir unsere Webprozesse mit Unicorn aus . Unicorn hat eine großartige Signalverarbeitungs-API. Wenn ich den Prozess ordnungsgemäß neu laden möchte, sende ich dem Master-PID ein USR2-Signal. Um sie ordnungsgemäß herunterzufahren, sende ich einen QUIT-Befehl. TERM (Standardstoppsignal des Upstarts) bedeutet ein sofortiges Herunterfahren.
Ein anderes Beispiel ist die Verwendung von Resque . Um einen Arbeiter ordnungsgemäß herunterzufahren, sende ich ihm das QUIT-Signal. Das TERM-Signal bewirkt erneut ein sofortiges Herunterfahren, unabhängig davon, ob das Kind des Arbeiters gegabelt ist oder nicht.
Unterstützt Upstart benutzerdefinierte Signale? Ich kann es anscheinend nirgendwo finden, was mich beunruhigt, dass ich das "falsche Werkzeug für den Job" verwende.