Развертывание приложения Flask Socket.io с помощью eventlet в Google AppEngine - PullRequest
0 голосов
/ 03 мая 2020

Я использую flask socket.io, настроенный с помощью eventlet на гибком экземпляре Google Appengine. Согласно документации flask socket.io: https://flask-socketio.readthedocs.io/en/latest/ при работе socketio.run(app) запустит веб-сервер, если установлен eventlet.

У меня есть локальное реагирующее веб-приложение, пытающееся установить sh соединение WebSocket с этим экземпляром ядра приложения. Веб-приложение использует socket.io и изначально по умолчанию опрашивает HTTP-запросы. Эти запросы все время ожидания ... Я не могу установить sh подключение через веб-сокет. Я не уверен, что может быть причиной моей проблемы, будь то конфигурация ядра моего приложения или моя flask настройка socket.io.

Вот мой код инициализации для flask socket.io:

app = Flask(__name__)
socketio = SocketIO(app)
socketio.init_app(app, cors_allowed_origins="*")
..
..
if __name__ == '__main__':
    socketio.run(app, debug=True)

Вот мой app.yaml:

runtime: python

env: flex

entrypoint: python3 server.py

runtime_config: 
  python_version: 3

manual_scaling:
  instances: 1

network:
  session_affinity: true

Вот код веб-приложения, пытающегося установить соединение:

import io from 'socket.io-client'
const socketURL = "<app-engine-instance-url>:5000"
const socket = io.connect(socketURL)
...