WebSocket на Go: от эксперимента до production-ready решения

Когда речь заходит о WebSocket, многие думают: «Ну это же просто протокол для real-time связи, что там сложного?»
А потом начинаются вопросы:
Почему соединения рвутся через минуту?
Как настроить таймауты между клиентом, прокси и сервером?
Какую библиотеку выбрать — и почему это вообще важно?
Как масштабировать и балансировать stateful-соединения?
WebSocket - это не просто протокол. Это целая экосистема, где критически важны выбор языка, библиотек, настройка прокси и понимание того, как всё это работает под реальной нагрузкой.
В этой статье - практический эксперимент: как создать и протестировать WebSocket-сервис на Go, Nginx и Docker, способный держать десятки тысяч одновременных соединений.
