Мне действительно нужна репликация сеанса?
Я работаю над рядом веб-проектов для фирмы. Большинство проектов - это одна или две страницы ввода, а затем выполняется сохранение в базе данных mysql. Очень простые проекты. Мои SA настаивают на том, чтобы репликация сеансов работала в JBoss, но я действительно не вижу необходимости в этом и во всех связанных с ним накладных расходах.
Нам нужна балансировка нагрузки и кластеризация, поэтому, если сервер все-таки выйдет из строя, мы можем переместить новые запросы в службу резервного копирования, но я не слишком разбираюсь в репликации сеансов.
Это проекты очень небольшого объема. На мой взгляд, каковы шансы того, что пользователь окажется в проекте, когда сервер отключается на одной или двух страницах.
Мне нужно убедить SA в том, что в данном случае репликация сеанса - ненужное осложнение. Я ищу плюсы и минусы репликации сеансов, чтобы лучше структурировать свои аргументы.
Мне кажется, что вы, администраторы, пытаетесь создать отказоустойчивую среду, чтобы в случае отключения одного сервера пользователи не испытали никаких заметных изменений. Это также может быть связано с техническим обслуживанием, чтобы они могли работать на одном из серверов, не затрагивая другие.
В этом сценарии приложение и веб-сервер должны будут предоставить какую-то абстрактную репликацию сеанса или кэш для хранения информации о сеансе в случае, если исходный отвечающий сервер перейдет в автономный режим.
По сути, это предотвращает выгрузку ваших пользователей из приложения и необходимость повторного входа в систему.
Как упоминает Джон выше, это действительно сводится к бизнес-требованиям: если требуется высокая доступность, у вас действительно нет выбора в этом вопросе. В любом случае реализация разгрузки сеанса либо в базу данных, либо в распределенный кеш в памяти часто не вызывает больших накладных расходов и сложна для реализации.
Этот вопрос для меня восходит к деловому аргументу - каковы соглашения об уровне обслуживания приложений? Если в вашем соглашении об уровне обслуживания указано, что вы можете потратить от 5 до 10 секунд на завершение переключения на вторичный сервер после того, как первичный будет активирован и принудительно перезапустит сеанс на клиенте, что резко упростит репликацию. Если в соглашении об уровне обслуживания указано, что у вас есть 0,5 секунды на восстановление после сбоя и / или вам не разрешено принудительно перезапустить сеанс, тогда позвольте SA запустить репликацию и использовать ее.
«Нам нужна балансировка нагрузки и кластеризация» подсказывает мне, что ваши соглашения об уровне обслуживания таковы, что вам также нужна репликация сеанса, но это я только читаю.