Збереження стану сеансу на стороні сервера () — шаблон проєктування, який пропонує зберігати стан сеансу на стороні сервера.

Опис

При реалізації клієнт-серверної архітектури необхідно реалізувати передачу даних між обома сторонами. При цьому варто зберігати інформацію про сеанс.

Даний шаблон пропонує зберігати стан сеансу на стороні сервера. Таким чином, об'єкти сеансу зберігаються в колекції, в оперативній пам'яті серверу, та індексуються за допомогою ідентифікатора сеансу, який передає клієнт.

Переваги та недоліки

Переваги

Можна миттєво відновити сеанс Розмір куки менший Висока надійність. Інформація про користувача прихована на сервері Можна збільшувати розмір сесії не змінюючи розмір куки

Недоліки

Викликає навантаження на сервер, оскільки йому доводиться зберігати стан усіх клієнтів Якщо сервер виходить із ладу, сесії усіх клієнтів втрачаються Важко обмінювати стан сесії при наявності реплікацій вебсервера

Реалізація

Нехай користувач вводить свою електронну пошту та пароль. Тоді такі дані можна зберігати на сервері за допомогою сесій.

Див. також Клієнт-серверна архітектура Вебсервер

Джерела Server Session State Patterns of Enterprise Application Architecture