Как сохранить сеансы при переходе с одного сервера приложений на другой

Предполагая, что я следую инструкциям в этом ответе, чтобы развернуть новую версию приложения без простоев. Когда я направляю пользователей к новому экземпляру сервера приложений, приложение не запоминает их сеанс, поэтому они выходят из системы без предупреждения.

Есть ли способ сохранить сеансы на нескольких серверах или сделать "снимок сеанса" или подобное?

В моем случае это Java-приложение, если это имеет значение.

3 ответа

Решение

Храните данные сеанса на отдельном сервере, к которому имеют доступ оба сервера приложений.

Сохраните сеанс в Memcache и разрешите обоим серверам иметь доступ к серверной части memcache.

Вы можете хранить их на общем диске, но это медленно и неэффективно. Memcache в значительной степени правильный способ сделать это.

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

Другие вопросы по тегам