Найти - Пользователи
Полная версия: uwsgi и gevent
Начало » Python для экспертов » uwsgi и gevent
1
alexandre1
Понадобилось написать небольшой чат, первое что пришло в голову это websocket. Для этого выбрал gevent. И библиотеку gevent-socketio.
Там есть довольно неплохие примеры, https://github.com/abourget/gevent-socketio/tree/master/examples/simple_chat первый же простой пример сразу и заработал, понадобилось только
var socket = io.connect(); заменить на var socket = io.connect('http://0.0.0.0:8080/');

Адрес взял отсюда
 SocketIOServer(('0.0.0.0', 8088), Application(), resource="socket.io").serve_forever()

Но после этого я захотел встроить это все в фреймворк чтоб не запускать отдельно файл с сервером.
И вроде это можно сделать через uWSGI http://uwsgi-docs.readthedocs.org/en/latest/Gevent.html. Достаточно в конфиге прописать
gevent = 100
Но какой адрес тогда прописывать
var socket = io.connect();
чтоб все заработало?

И вообще у кого то получилось через uWSGI запускать gevent ?
o7412369815963
alexandre1
И вроде это можно сделать через uWSGI
зачем?
- лишняя прослойка к веб-серверу (nginx)
- похоже нужно переделывать специально под uwsgi, и возможно в socket.io это не предусмотрено
- нельзя запустить основной сайт в этом же uwsgi


Я делаю в nginx для gevent-приложения отдельный линк /chat, и на выходе он нормально работает на том же порту что и основной сайт.
alexandre1
Ну мне просто не хочется запускать постоянно еще один файл, и собственно следить за тем чтоб он был запущен.
В котором запускаестя сервер.
 SocketIOServer(('0.0.0.0', 8088), Application(), resource="socket.io").serve_forever()
Как то можно обойти постоянный запуск из консоли SocketIOServer?
o7412369815963
У меня прописан в кроне на перезагрузку @reboot и все. Процесс не падает, работает как часы.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB