2011-01-06 15 views
2

ich einen einfachen Twisted-Server geschrieben habe -Python Twisted-Daemon

from twisted.internet import reactor 
from twisted.internet import protocol 
from twisted.web import server, resource 
from twisted.internet import reactor 

class Index(resource.Resource): 
    isLeaf = True 
    def render_GET(self, request): 
     args = request.args 
     print 'Args: %s' %(repr(args)) 

print 'Serving on PORT: 8090' 
site = server.Site(Index()) 
reactor.listenTCP(8090, site) 
reactor.run() 

Die auf 127.0.0.1:8090 fein läuft. Beachten Sie, dass dies im Terminal (Vordergrund) ausgeführt wird, wenn ich den Prozess im Hintergrund unter Verwendung von nohup & ctrl+Z ausführen lasse. Der Server antwortet nicht auf Anfragen. Was soll ich tun, um diesen verdrehten Server zu dämonisieren

+0

Basieren Sie es eigentlich, oder suspendieren Sie es einfach mit ctrl + z? – nmichaels

+0

Nun habe ich 'ctrl + z' versucht. Wie sonst kann ich es deamonisieren? –

+3

Geben Sie nach Eingabe von "Strg + Z" "bg" in Ihre Shell ein. das wird den suspendierten Prozess als Hintergrundjob – Rakis

Antwort

3

Wie nmichael und Rakis bereits erwähnt, geben Sie nach "ctrl + z" "bg" ein, um den suspendierten Prozess als Hintergrundjob fortzusetzen.

Um es direkt als Hintergrundjob auszuführen, geben Sie

python myserver.py & 

Um es direkt als Hintergrundjob ausführen, wird nicht aufhören, wenn Sie abzumelden, geben Sie

nohup python myserver.py & 

Beachten Sie auch, dass nohup ist nicht wahre Deamonisierung. Die Unterschiede hier: What's the difference between nohup and a daemon?

Wenn Sie wirklich Ihr Verdrehte Server wollen deamonize, ist die beste Option twistd als Mark Loeser beantwortet zu verwenden.

+0

Dank. habe das schon gemacht & es funktioniert. da die Antworten von nmicheal keine tatsächliche Antwort waren, konnte ich nicht updaten oder markieren ... –

+0

Dies ist nicht wirklich eine Daemonisierung. Wenn Sie beispielsweise das Terminalfenster schließen, verschwinden stdin, stdout und stderr einfach. – Glyph

+0

@Glyph natürlich. Deshalb habe ich den letzten Satz * "Aber wenn du es wirklich deamonisieren willst, benutze twisted, wie Mark Loeser geantwortet hat." * Ich habe nur geantwortet, wie man im Hintergrund oder mit 'nohup' läuft, es nicht deamonisiert. –