У меня есть клиент-серверное приложение, которое должно поддерживать приложение каждого пользователя в актуальном состоянии с помощью набора информации о состоянии.
Обычно одновременно может быть до 1000 пользователей, но в будущем это число может возрасти до 5000 или более.
Обновления должны предоставляться примерно каждые 10 секунд, чтобы пользователь никогда не устарел смотреть на приложение.
Какое приложение лучше всего подходит (это .Net C #)?
- Механизм «широковещания», где каждый клиент «слушает» сообщение об обновлении
- Механизм публикации / подписки, при котором каждый подключенный клиент сообщает серверу отправлять ему сообщение каждые 10 секунд
- Клиентский запрос - каждые 10 секунд каждый клиент запрашивает текущие данные
Система, которую я унаследовал, использует последний подход - и не масштабируется до необходимой степени.
Спасибо