Вступить в клуб →
сложнаявопросNginx и балансировка: прокси, TLS, таймауты

На пике nginx пишет «Cannot assign requested address» при подключении к бэкенду

Nginx проксирует 6 000 RPS на три бэкенда через блок upstream без дополнительных настроек. На пике в error.log появляется connect() failed (99: Cannot assign requested address), часть запросов получает 502. ss -s показывает около 90 тысяч соединений в состоянии TIME-WAIT. Бэкенды загружены на 30%.

Что изменить?

  • Включить keepalive в upstream и HTTP/1.1 к бэкенду
  • Увеличить worker_connections до 65535
  • Добавить четвёртый бэкенд в upstream
  • Уменьшить keepalive_timeout для клиентов

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

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

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

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