[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"question-servlety-chto-takoe-sessiya":3},{"id":4,"slug":5,"topicId":6,"topicSlug":7,"topicName":8,"topicEmoji":9,"question":10,"answer":11,"codeLang":12,"codeSrc":12,"important":12,"commonMistakes":12,"modernUsage":12,"difficulty":13,"tags":14,"related":16,"progress":17,"seo":18},558,"chto-takoe-sessiya",13,"servlety","Сервлеты","🖧","Что такое сессия","Сессия (Session) — это серверный механизм хранения состояния клиента между несколькими HTTP-запросами. Поскольку HTTP — stateless протокол, сессия решает проблему «запоминания» пользователя: его аутентификации, корзины покупок, настроек и других данных.\n\n> **Аналогия из жизни:** сессия — это номерок в гардеробе. Клиент получает номерок (session ID) при первом визите, и при каждом следующем обращении предъявляет его, чтобы получить доступ к своим вещам (данным сессии). Когда клиент уходит — номерок аннулируется.\n\n### Как работает HttpSession\n\n1. Клиент отправляет первый запрос\n2. Сервер создаёт объект `HttpSession` с уникальным ID\n3. ID отправляется клиенту через cookie `JSESSIONID`\n4. Клиент возвращает `JSESSIONID` с каждым запросом\n5. Сервер по ID находит объект `HttpSession` с данными клиента\n\nСессия имеет таймаут неактивности (по умолчанию 30 минут в Tomcat). После таймаута сессия инвалидируется контейнером, и все её атрибуты удаляются из памяти.\n\n> **На собеседовании:** частая ошибка — не упомянуть проблему серверных сессий в распределённых системах. При нескольких экземплярах приложения нужна либо sticky session, либо распределённое хранилище сессий (Redis), либо stateless-подход (JWT).","","junior",[15],"servlets",[],null,{"title":19,"description":20,"ogTitle":19,"ogDescription":21,"keywords":22,"schemaAnswer":23,"featuredSnippetReady":24},"Что такое сессия — Gymterview","Сессия (Session) — это серверный механизм хранения состояния клиента между несколькими HTTP-запросами. Поскольку HTTP — stateless протокол, сессия решает пробле","Сессия (Session) — это серверный механизм хранения состояния клиента между несколькими HTTP-запросами. Поскольку HTTP — ",[15,13],"Сессия (Session) — это серверный механизм хранения состояния клиента между несколькими HTTP-запросами. Поскольку HTTP — stateless протокол, сессия решает проблему «запоминания» пользователя: его аутентификации, корзины покупок, настроек и других данных.",true]