Используется upload_progress для нечастой загрузки файлов размером обычно до
100 Мб. До тех пор пока был один фронтенд, все было хорошо.
Сейчас планируется поставить еще один (две A записи в dns, round-robin) и
далеко друг от друга?
Сейчас нет - в одной сети, но всякое возможно.
Основная цель - стабильность работы. Т.е. если один фронтенд не отвечает, надо чтобы сайт работал (и аплоад тоже). Вариант с dns не пойдет.
haproxy тоже не хочется громозить, т.к. это уже три ступени получается, да и не KISS это.
всвязи с этим вопрос:
Правильно ли я понимаю что аплоад естественно пойдет на один сервер, а
ajax-запросы состояния аплоада будут уходить поочередно на оба сервера? Это
это зависит от того, что будет делать аплоад и от скриптов
корректо для всех более-менее массовых браузеров?
Второй nginx не будет знать о состоянии аплоада на первом и будет возвращать
ошибки. Я думаю можно просто в коде игнорировать ошибки, если их было подряд
не более скажем 5. Не повлечет ли это каких-либо серьезных проблем?
может просто в коде учитывать куда делается аплоад?
Хм, спасибо. Пожалуй да - так будет лучше. Пусть аплоад идет на www, а _javascript_ будет первой итерацией опрашивать фронтенды, и кто ответит о файле положительно - тот наш и в дальнейшем спрашиваем только его.