Недавно я решил разработать веб-сайт, чтобы играть в игру с моими друзьями. Я работаю с Flask и использую веб-сокеты для взаимодействия с клиентами в обоих направлениях.
Я бы хотел развернуть веб-сайт на Heroku, но изо всех сил стараюсь разобраться во всех различных компонентах. Мне нужно и как они взаимодействуют:
- HTTP-сервер (Apache, Nginx)
- WSGI-сервер (Gunicorn)
- Gevent
- Socket.io (через flask_socketio)
- Flask
Я понимаю, что HTTP-сервер связывается с реальным миром через HTTP, что WSGI является своего рода интерфейсом (что это значит?) Между HTTP-сервером и Flask.
Но я видел что Gunicorn может использоваться как автономный, без HTTP-сервера ...
И я действительно не уверен, что такое веб-сокеты, что делает gevent и как они вписываются в общую картину.
Я знаю, что все это очень расплывчатый вопрос, но было бы неплохо перенаправить их, по крайней мере, на хорошую документацию:)