`

flask_socketio + nginx + uwsgi + gevent + websocket实现稳定消息通讯

阅读更多
1、nginx反向代理配置:

location /socket.io {
        include uwsgi_params;

        proxy_http_version 1.1;
        proxy_buffering off;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "Upgrade";

        uwsgi_pass  127.0.0.1:5000;
}

2、uwsgi ini文件配置:
[uwsgi]
socket = 127.0.0.1:5000
master = true
chdir =
wsgi-file =
processes = 1
stats = 127.0.0.1:9591
daemonize = /psd/logs/uwsgi.log
pidfile = uwsgi.pid
vacuum = true
callable = app
enable-threads = true
log-maxsize = 10000000
disable-logging = true
buffer-size=32768

http-websockets = true
gevent = 100
gevent-early-monkey-patch = true


3、flask_socketio 后台代码,网上一大堆
from flask_socketio import SocketIO, emit
...



分享到:
评论

相关推荐

    python在线会议系统后台服务.zip

    11. **部署与运维**:部署可能涉及`Docker`容器化、`Gunicorn`或`uWSGI`应用服务器以及`Nginx`反向代理。`supervisor`或`systemd`用于进程管理。 以上只是可能的技术栈和实现方式,具体实现取决于开发者的决策和...

    uwsgiit-py-源码.rar

    - uWSGI提供了许多性能优化选项,如缓存、异步I/O、Gevent支持等。 - 源码可能包含如何利用这些功能的示例和指导,以提高web应用的响应速度和并发能力。 6. **监控和管理工具**: - uWSGI提供了一套命令行工具...

    chat_application

    Python有多种WebSocket库,如`websockets`或`gevent-websocket`,它们可以让服务器实时推送消息给客户端。 4. **认证与授权**:为了确保用户安全,项目可能使用了如`Flask-Login`或`Django-Auth`这样的库来处理用户...

    chat

    Python 有多种实现 WebSocket 的库,如 `websockets` 或 `gevent-websocket`。 四、数据库管理 为了存储用户信息、聊天记录等,开发者通常会使用数据库。SQL(如 MySQL、PostgreSQL)或 NoSQL(如 MongoDB、Redis)...

    Web2

    8. **Web实时通信**:WebSocket协议使得服务器和客户端可以进行双向通信,Python有gevent和Tornado等库支持WebSocket。 9. **部署与运维**:Gunicorn和uWSGI是常用的Python WSGI服务器,Nginx作为反向代理和负载...

Global site tag (gtag.js) - Google Analytics