Начните с требований: личные и групповые чаты, устройства, offline, порядок, история и шифрование. Базовая схема включает gateway соединений, сервис диалогов, надёжное хранение и доставку событий.
Спроектируйте мессенджер.
Начните с требований: личные и групповые чаты, устройства, offline, порядок, история и шифрование. Базовая схема включает gateway соединений, сервис диалогов, надёжное хранение и доставку событий.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Начните с требований: личные и групповые чаты, устройства, offline, порядок, история и шифрование. Базовая схема включает gateway соединений, сервис диалогов, надёжное хранение и доставку событий.
Сообщение получает устойчивый ID и подтверждается после согласованной долговечной записи; повтор отправки должен дедуплицироваться. Порядок обычно задают внутри диалога, не глобально. Online-доставка идёт по постоянному соединению, offline — через историю и push-уведомление. Вложения хранят отдельно, доступ проверяют по участникам. Затем обсуждают fan-out групп, партиционирование, регионы и удаления; сквозное шифрование меняет поиск и хранение ключей.