Вопрос

Я написал простой витой сервер -

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

Это работает нормально на 127.0.0.1:8090. Отказ Обратите внимание, что это работает в терминале (передний план), когда я делаю процесс запуска в фоновом режиме, используя nohup & ctrl+Z. Отказ Сервер не отвечает на запросы. Что я должен сделать, чтобы сделать это витой сервер

Это было полезно?

Решение

Как уже упоминалось Nmichael и Rakis, после того, как «Ctrl + Z» введите «BG», чтобы возобновить приостановленный процесс в качестве фоновой работы.

Чтобы запустить его непосредственно как фоновое задание, введите

python myserver.py &

Чтобы запустить его непосредственно в качестве фоновой задачи, которая не остановится при выходе из системы, введите

nohup python myserver.py &

Также обратите внимание nohup, не настоящая деамонизация. Смотрите различия здесь: В чем разница между нихуп и демоном?

Если вы действительно хотите Daamonize свой извращенный сервер, лучший вариант должен использовать twistd Как ответил Марк Лесер.

Другие советы

Я бы порекомендовал смотреть в Twistd. Таким образом, вам не нужно беспокоиться о обращении с любым запуском, управление файлами PID и т. Д. Документация на их сайте довольно хорошая: http://twistedmatrix.com/documents/current/core/howto/basics.html.. Отказ Также проверка http://twistedmatrix.com/documents/current/core/howto/tap.html. Для того, как реализовать файл приложения.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top