После минутного сбоя сервер не может подняться: клиенты заваливают его повторами
while (true)
{
var ok = await api.Login();
if (ok) break;
await UniTask.Delay(1000);
}
Игра онлайн у 200 000 человек. Сервер авторизации упал на минуту. После перезапуска все клиенты одновременно шлют повторы раз в секунду, и сервер падает снова. Как переписать повторы?
- Растущая пауза со случайным разбросом
- Уменьшить паузу до 100 мс, чтобы быстрее войти
- Повторять без паузы, пока не получится
- Отправлять запрос с двух потоков сразу
