Найти - Пользователи
Полная версия: gevent + flask под apache?
Начало » Python для экспертов » gevent + flask под apache?
1
plusplus
app = Flask(__name__)
from websocket import handle_websocket
def my_app(environ, start_response):
    path = environ["PATH_INFO"]
    if path == "/websocket":
        handle_websocket(environ["wsgi.websocket"])   
    else:  
        return app(environ, start_response) 
http_server = WSGIServer(('',8000), my_app, handler_class=WebSocketHandler)
http_server.serve_forever()

Нашел пример, с реализацие веб-сокетов через gevent, всё работает. А как запустить это всё под apache-м? Нагуглить мануал не удалось. Может это в принципе невозможно и нужно вот этот WSGIServer отдельно поднимать?
o7412369815963
Я использую веб сокеты под gevent, запускаю как самостоятельный процесс и проксирую его через ngnix.
а зачем тут фласк?
plusplus
o7412369815963
Я использую веб сокеты под gevent, запускаю как самостоятельный процесс и проксирую его через ngnix.а зачем тут фласк?

Ну у меня основное приложение на фласке, хочу прикрутить вебсокеты.
o7412369815963
plusplus
Ну у меня основное приложение на фласке, хочу прикрутить вебсокеты.

Пусть фласк остается в основном приложении, для веб сокетов он не нужен.

тут пример сервера веб сокетов https://pypi.python.org/pypi/gevent-websocket/

вот конфиг Nginx для проксирования вебсокетов в gevent
server {
        listen   80;
        server_name hostname;
        location /wcontrol {
                proxy_pass http://localhost:8003;
                proxy_http_version 1.1;
                proxy_set_header Upgrade $http_upgrade;
                proxy_set_header Connection "upgrade";
                proxy_read_timeout 300;
                proxy_set_header  Host       $host;
                proxy_set_header  X-Real-IP  $remote_addr;
                #proxy_set_header  X-Forwarded-For $proxy_add_x_forwarded_for;
        }
}

у меня в проекте он работает стабильно.
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