Блог Слёрм

Задача «Проблема при сканировании сервиса»

Ещё одна задача от Сергея Комарова, Senior Golang-разработчика в inno.tech и ревьюера курса «Golang для инженеров». В этот раз необходимо устранить проблемы с соединением в чате.

🔹 Вводные данные:

Uptime всех сервисов: близок к 99.99%

Сеть: стабильная, не падает

Сервис: поднят в Kubernetes

🔹 Сервис:

Есть видеочат с комнатами

Пользователи могут подключаться к комнатам и общаться друг с другом

Каждый пользователь передает данные (аудио/видео) в комнату и принимает данные от других участников

🔹 Нагрузка:

Одновременно работают до 1000 комнат

В каждой комнате от 2 до 20 участников

🔹 Проблема:

При работе одного инстанса сервиса всё работает корректно.

При масштабировании (запуске нескольких инстансов) часть пользователей в одной комнате перестают видеть и слышать другую часть пользователей. Чем больше инстансов, тем больше таких групп пользователей, которые видят и слышат только друг друга

Как думаете, в чём здесь дело? Переходите в наш телеграм-канал и делитесь вашим решением, а завтра мы выложим ответ на задачу.
Golang