Ein Ruby-Programm als Windows-Dienst ausführen?
Ist es möglich, eine ruby-Anwendung als Windows-Dienst? Ich sehe, dass es eine Verwandte Frage, die diskutiert laufende eine Java-Anwendung als Windows-Dienstwie können Sie dies tun mit einer Ruby-Anwendung?
InformationsquelleAutor der Frage Kyle Burton | 2008-10-02
Du musst angemeldet sein, um einen Kommentar abzugeben.
Check-out die folgenden Bibliotheken: Win32Utils. Können Sie eine einfache service, können Sie start/stop/restart in Ihrer Freizeit. Ich verwende derzeit es zu verwalten, ein Mongrel-Instanz für ein Windows-hosted-Schienen-app und es funktioniert einwandfrei.
InformationsquelleAutor der Antwort mwilliams
Wenn Sie versuchen, die Win32Utils man wirklich brauchen, um die studie der doc und schauen über das Netz, bevor der Suche nach ein paar einfachen Beispiel arbeiten.
Dies scheint zu funktionieren heute 2008-10-02:
gem install win32-service
Update 2012-11-20:
Nach https://stackoverflow.com/users/1374569/paul
die register_bar.rb sollte jetzt
bar.rb
die Anwendung erstellen/daemon
bar.rb ist der service, aber wir müssen erstellen und sich registrieren!
diese kann getan werden, mit sc create some_service
aber wenn wir gehen, um ruby und win32utils wir tun sollten, ein
register_bar.rb
Hinweis, es ist ein Leerzeichen zwischen c:\tmp\ bar.die rb 'c:\usr\ruby\bin\rubyw.exe -C c:\tmp\ bar.rb'
Laufen
ruby register_bar.rb
und nun kann man den Dienst starten, entweder über das windows-service-control-panel oder
Uhr und c:test.log gefüllt werden mit
- Dienst ausgeführt wird, Thu Oct 02 22:06:47 +0200 2008
Aus dem einfachen des etwas, mit zu arbeiten, es ist leichter zu entfernen, den Dienst registrieren, und erstellen Sie eine neue, anstelle der änderung eines bestehenden
unregister_bar.rb
Kredite an die Menschen
http://rubypane.blogspot.com/2008/05/windows-service-using-win32-service-and_29.html
http://rubyforge.org/docman/view.php/85/595/service.html
InformationsquelleAutor der Antwort Jonke
Hier ist ein code-template zu tun firedeamon 🙂
InformationsquelleAutor der Antwort raubarede
Können Sie schreiben (oder laden) einen wrapper-service. Der wrapper aufrufen kann ruby.exe um Ihr Programm auszuführen. Gleiche trick funktioniert auch für Java, VB, etc.
InformationsquelleAutor der Antwort Ken
Sollten Sie in der Lage sein, dies zu erreichen in der IronRuby-da müsste man haben .NET framework hinter Sie.
InformationsquelleAutor der Antwort GEOCHET