Читая немного о предмете, и из любопытства, онлайн-игры, которые поддерживают систему «лобби», в которой перечислены игры;
Как они синхронизируют каждого клиента с текущим состоянием списка игр?
Я говорю в терминах "", которые запрашивают обновление списка игр", а не в терминах, управляемых событиями (состояние игры изменяется и сразу же передает его <--- не масштабируется!). </p>
Возможные сценарии:
Сервер содержит 5000 подключений к онлайн-игрокам.
Имеет список из 1000 игр.
Клиент запрашивает обновление списка игр каждую секунду.
Теперь серверу нужно пройти по всему списку игр и сравнить время последнего обновления каждой конкретной игры, а затем, если он увидит, что последнее обновление игрока старше, он отправит обновление.
Это означает, что каждую секунду он будет иметь (5000 * 1000 = 5 000 000 ) итераций !
Есть ли практический способ избежать этого?
Вы уже сделали это, и можете поделиться со мной советом?
Я думал о том, чтобы иметь кеш. Каково ваше решение?