Низкая задержка, продвижение сервера.Сколько открытых соединений может иметь сервер? - PullRequest
0 голосов
/ 05 марта 2019

Задача - отправлять клиентам уведомления о некоторых событиях.Скажем, для примера частота событий составляет около ~ 1 в секунду, у нас есть около 10000 клиентов, слушающих событие.Какую архитектуру вы бы предложили?Сколько открытых соединений можно сохранить для push-сообщений сервера?

1 Ответ

0 голосов
/ 06 марта 2019

Если вы используете сервер веб-сокетов, основанный на хорошей масштабируемой многопоточной архитектуре, реальный предел - это не количество открытых соединений, а общая пропускная способность.В вашем случае общее количество сообщений составляет 10000 сообщений в секунду.Также следует учитывать средний размер сообщения.Например, если типичное сообщение составляет 10 байтов, ваша общая пропускная способность составляет 0,8 Мбит / с;если типичное сообщение составляет 1000 байт, ваша общая пропускная способность составляет 80 Мбит / с.

В обоих случаях, по нашему опыту, сервер среднего размера может безопасно обрабатывать такой трафик.

Просто для справкиМы успешно протестировали 1 миллион одновременных подключений на нашем сервере веб-сокетов с пропускной способностью одного сообщения каждые 10 секунд.Это означает, что 100 000 сообщений в секунду распределяются по 1 000 000 сокетов на одном сервере.[Полное раскрытие: я соучредитель Lightstreamer]

...