Question

J'ai écrit un simple serveur torsadé -

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()

Cela va bien sur 127.0.0.1:8090. Notez que ce cela va dans le terminal (au premier plan), quand je fais la course de processus en arrière-plan en utilisant nohup & ctrl+Z. le serveur ne répond pas aux demandes. Que dois-je faire pour daemonize ce serveur tordu

Était-ce utile?

La solution

nmichael et Rakis déjà mentionné, après "ctrl + z" type "bg" pour reprendre procédé en suspension en tant que tâche de fond.

Pour exécuter directement comme tâche de fond, tapez

python myserver.py &

Pour exécuter directement comme tâche de fond qui ne s'arrêtera lorsque vous fermez la session, tapez

nohup python myserver.py &

Notez également que nohup, n'est pas vrai deamonization. Voir ici les différences: Quelle est la différence entre nohup et un démon?

Si vous voulez vraiment deamonize votre serveur Twisted, la meilleure option est d'utiliser twistd comme Mark Loeser a répondu.

Autres conseils

Je conseille de regarder dans twistd. De cette façon, vous n'avez pas à vous soucier de la manipulation de tout le démarrage, la gestion des fichiers pid, etc. La documentation sur leur site est assez bon: http://twistedmatrix.com/documents/current/core/howto/basics.html . Jetez également http://twistedmatrix.com/documents/current/core/howto/tap .html pour savoir comment mettre en œuvre le fichier d'application.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top