Каково время ожидания сеанса по умолчанию для веб-сайта Java EE? - PullRequest
29 голосов
/ 27 сентября 2008

Если в моем файле web.xml не указано следующее:

<session-config>
    <session-timeout>10</session-timeout>
</session-config>

Какой будет мой тайм-аут по умолчанию? (Я использую Tomcat 6.0)

Ответы [ 4 ]

34 голосов
/ 27 сентября 2008

Если вы используете Tomcat, это 30 минут. Вы можете прочитать больше об этом здесь .

8 голосов
/ 27 сентября 2008

Вы также можете установить это в коде для конкретного сеанса, используя HttpSession setMaxInactiveInterval API:

Указывает время в секундах, между клиентскими запросами до контейнер сервлета сделает это недействительным сессия. Отрицательное время указывает на сеанс никогда не должен прерываться.

Я упоминаю об этом в случае, если вы видите тайм-ауты, которые не 30 минут, но вы не указали другое значение (например, другой разработчик в проекте использовал этот API).

Еще один момент, на который следует обратить внимание: этот тайм-аут может не сработать в ту секунду, когда сеанс может истечь. Сервер Java EE может иметь поток опроса, который каждую минуту проверяет истекшие сеансы. У меня нет ссылки на это, но я видел такое поведение в эпоху WebSphere 5.1.

5 голосов
/ 27 сентября 2008

Я уверен, что это зависит от вашего контейнера. Tomcat составляет 30 минут.

1 голос
/ 20 декабря 2009

Время ожидания сеанса мы можем указать для этого конкретного контекста в файле web.xml, как указано ниже 60

Время ожидания сеанса по умолчанию составляет 30 минут

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...