Вступить в клуб →
средняявопросСеть, сохранения и защита игровых данных

После минутного сбоя сервер не может подняться: клиенты заваливают его повторами

while (true)
{
    var ok = await api.Login();
    if (ok) break;
    await UniTask.Delay(1000);
}

Игра онлайн у 200 000 человек. Сервер авторизации упал на минуту. После перезапуска все клиенты одновременно шлют повторы раз в секунду, и сервер падает снова. Как переписать повторы?

  • Растущая пауза со случайным разбросом
  • Уменьшить паузу до 100 мс, чтобы быстрее войти
  • Повторять без паузы, пока не получится
  • Отправлять запрос с двух потоков сразу

🔒 Проверка ответа — для участников клуба

  • Проверка ответа
  • Подсказка, если застряли
  • Разбор с объяснением, почему так
  • Прогресс по всем задачам и виртуальные собеседования
Зарегистрироваться →

Регистрация занимает минуту

Другие задачи раздела