Flask是否支持http和websocket部署在同一个端口
我在pycharm中
from flask import Flask
from flask_socketio import SocketIO,emit
app = Flask(__name__)
app.config['SECRET_KEY'] = 'your-secret-key'
socketio = SocketIO(app)
@socketio.on('connect')
def handle_connect():
emit("connect","success")
@app.route('/')
def index():
return "success"
if __name__ == '__main__':
socketio.run(app, host='0.0.0.0', port=8000)
是可以正常运行的,http和websocket都能启动
我查阅资料发现是因为pycharm存在内置的Werkzeug开发服务器,
是支持一个端口同时处理http和websocket的
WARNING: This is a development server.
Do not use it in a production deployment. Use a production WSGI server instead.
但是使用生产环境时uwsgi或gunicore时,一个服务器只能监听一个端口且只能选择一个通信方式
是否可以做到http和websocket在同一个端口上
如果不可以,那我使用两个uwsgi在不同端口上一个运行app,另一个运行socketio,
这两个的程序是否在同一个内存空间中