Мы используем COOKIEINSERT, настроенный на использование файлов cookie сеанса с 4 серверами за NetScaler. Если я открою веб-страницу, она загрузится нормально. Если я удалю файл cookie, добавленный NetScaler, и обновлю страницу, мне будет предложено снова войти в систему (используется Windows auth, NTLM). Предостережение заключается в том, что запрос отправляется на тот же сервер, на котором он был успешным. Если он выбирает другой сервер, он терпит неудачу при входе в систему.
Удаление этого файла cookie маловероятно при нормальных обстоятельствах. Однако у нас есть другое приложение, которое делает запросы к API, предоставляемому тем же веб-приложением. Если cookie не существует, несколько запросов AJAX, которые запускаются примерно в одно и то же время, могут работать или не работать, и каждый запрос может идти на другой сервер (у нас есть заголовки HTTP, чтобы убедиться, что это так).
Прежде всего, необходимость повторного входа в систему после удаления файла cookie постоянства зависит от вашего приложения. Если ваше приложение имеет общий бэкэнд для пользовательских сеансов, не имеет особого значения, на какой бэкэнд-сервер вы приходите, если ваш пользовательский сеанс еще действителен.
Более того, рассмотрите сбой сервера в процессе транзакции, которая имеет несколько запросов AJAX. В это время NetScaler также направит следующие запросы на следующий доступный внутренний сервер.
Затем рассмотрим сценарий отправки нескольких вызовов AJAX. В случае, если ваша веб-страница обслуживается одними и теми же внутренними серверами, у клиента уже будет доступный файл cookie. (Вызовы AJAX не будут срабатывать до тех пор, пока вызывающий их код HTML / JS не будет загружен в браузер, что означает, что уже был ответ и был установлен файл cookie).
Я не уверен, что это полностью отвечает на ваш второй вопрос?