Flask-SocketIo由‘threading’长轮询传输模式改为‘eventlet’WebSocket传输模式,提升性能

This commit is contained in:
azhengzz 2021-05-10 19:57:22 +08:00
parent a1ea18bd2b
commit 373aa199fe
2 changed files with 5 additions and 2 deletions

View File

@ -17,6 +17,9 @@ from app.template_global import (render_to_json, sort_by_order_in_module, sort_b
calc_percent, url_for_static)
from app.cores.ws import register_all_user_socket
import eventlet
eventlet.monkey_patch()
def create_app(config_class=Config):
app = Flask(import_name=__name__)
@ -68,7 +71,7 @@ def register_extensions(app: Flask):
mail.init_app(app=app)
csrf.init_app(app=app)
bootstrap.init_app(app=app)
socketio.init_app(app=app, async_mode='threading')
socketio.init_app(app=app)
session_id_manager.init_app(app=app)
dispatcher_scheduler.init_app(app=app)

View File

@ -22,7 +22,7 @@ login_manager.login_message = "请先登录"
mail = Mail()
csrf = CSRFProtect()
bootstrap = Bootstrap()
socketio = SocketIO()
socketio = SocketIO(async_mode='eventlet')
session_id_manager = SessionIDManager()
dispatcher_scheduler = DispatcherScheduler()