212 похожих чатов

Какой стек лучше всего использовать для websocket чата ( в

перспективе будет млн + конекшенов) Soket.IO https://socket.io/docs/v4/redis-adapter/ - нормально масштабируется горизонтально ,пробовал кто или лучше свое что-то мастерить с своим брокером для такой задачи? Читал что RabbitMQ/Kafka не очень будут подходить для такой задачи с таким количеством сообщением

3 ответов

13 просмотров

> During the peak hours, the number of concurrent users on the site is in several million Это про фейсбук. Неопытные заказчики любят раздувать цифры по нагрузке, не понимая стоимости таких работ.

Вот нашел хороший пример архитектуры https://scaleyourapp.com/facebook-real-time-chat-architecture-scaling-with-over-multi-billion-messages-daily/ Вкратце - достаточно любой реляционной СУБД для хранения хистори по чату и любого MQ для доставки обновлений.

Похожие вопросы

Обсуждают сегодня

Всем привет. Ребят подскажите пожалуйста. Вопрос по дизасемблировани. Начну с начала. У меня есть скомпилированная программа на ГО (я разработчик) - в ней есть защита лицензии...
Zloy
11
я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
100
@MrMiscipitlick А можешь макрос написать, который будет вычислять смещение относительно переданных меток? Просто .label1-.label2, и вернуть значение.
КТ315
35
А еще в перле можно уже @arr1 + @arr2?
Sergei Zhmylove
53
здравствуйте. совершаю вот такую вещь: strcpy(line, (char)current_number); где current number — неподписанный шорт, line — массив чаров. ругань следующая: main.c:29:30: error...
Roberto's Ширгозиев
13
Привет всем. появился вопрос. Разрабатываю сайт, в данный момент он запущен. Хостинг beget. Добавляю на сайт яндекс метрику с помощью полей client-settings (взято отсюда http...
Andrew
2
Заметил в ghci 9.4.8: > :t (<*>) @((->)_) (<*>) @((->)_) :: (w -> (a -> b)) -> (w -> a) -> w -> b Разве не должно (w -> (a -> b)) быть записано как (w -> a -> b)? Это баг, ил...
Михаил
13
Подобного рода ;Следующие три строки это директивы ассемблера, ;которые можно не задавать, т.к.работаем в Visual Studio. ;Символ ";" - это начало однострочного комментария ...
Егор Анелькин
3
Или ты челендж хочешь?
Ilya Shvechikov
7
Подскажите, где смотреть результат выполнения программы? Код: ;.686 ;Система команд процессора 686 ;.MODEL FLAT,stdcall ;Модель памяти плоская, станда...
Егор Анелькин
5
Карта сайта