Кейс
Whitelabel-платформа для дайвинг-сообществ и школ: курсы, ученики, инструкторы и чат в реальном времени. Каждый клуб работает под своим именем и своим логотипом.
Задача
Дайв-клуб живет в мессенджерах и таблицах: группа курса в одном чате, инструкторы в другом, списки учеников и их прогресс — в файле, который ведет кто-то один. Учебный процесс при этом требует памяти: кто на каком курсе, что сдано, что назначено, какие заметки оставил инструктор.
Нужна была одна система, в которой общение и учет живут вместе, — и так, чтобы каждый клуб выступал под собственным брендом, а не под чужим.
Что сделали
Результат
Почему так мало движущихся частей
Такие задачи принято решать связкой из брокера сообщений, отдельного кэша и кластера веб-сокетов. Мы обошлись без этого: обновления идут обычным потоком событий поверх HTTP, данные лежат в SQLite. Меньше узлов — меньше того, что ломается ночью и требует отдельного человека на дежурстве.
Это не экономия на надежности, а другой ее источник: систему из немногих частей проще держать в рабочем состоянии годами. Логику закрывают больше сотни автоматических тестов.