Форум сайта python.su
Звучный заголовок топика получился :)
Сегодня пробовал поработать с web-сокетами с помощью Tornado и небольшого скрипта (в примерах к Tornado папка websocket). Запустил - работает, сообщения передаёт - всё здорово.
Попробовал рестартовать приложение - сообщает
socket.error: Address already in useКак правильно останавливать серверный сокет? Догадываюсь, что надо добавить обработчик сигнала kill, но что в нём написать - не знаю.
Отредактировано (Ноя. 21, 2011 16:32:56)
Офлайн
Зачем его останавливать, используйте флаг debug=True, для автоперезагрузки при изменениях.
Офлайн
вот ещё полезно для tornado:
inline callback: http://www.py-my.ru/post/4e78e5f01d41c8236c000000
asyncmongo: https://github.com/bitly/asyncmongo
Офлайн
o7412369815963Спасибо, сейчас мне это подходит. Но чуть позже надо будет устанавливать продукт клиенту, а потом перезагружать скрипт при обновлениях.
Зачем его останавливать, используйте флаг debug=True, для автоперезагрузки при изменениях.
Офлайн
Тогда используйте tornado.autoreload.start()
пример: http://www.py-my.ru/post/4e6080b01d41c85bc4000000
Офлайн
остановился на таком решении:
loop = tornado.ioloop.IOLoop.instance()
def handler(signo, frame):
loop.close()
exit()
signal.signal( SIGINT, handler )
signal.signal( SIGTERM, handler )
loop.start()
Офлайн