Distributed Sessions icon
Module Id
distributed-sessions
Group Id
org.jahia.modules
Updated
Requires Jahia
8.1.5.0
Author
Category
Tools and Utilities
Status
SUPPORTED info

Distributed Sessions check_circle

For authenticated users, the Jahia stores data in the HTTP session. By default, this data is stored in the memory of the server, where requests of a session are routed to. When the server is shut down, all this session data disappears and the user will have to login again and eventually re-do steps. For higher availability and up-time we recommend replicating the session data on all servers, so that sessions survive a stopped server and that other servers can continue working on user requests, which were previously served from the stopped server. 

Starting with v2.0.0, the distributed-sessions module offers the ability to distribute sessions on all servers with hazelcast.

The Jahia Academy contains dedicated documentation detailing distributed session usage for Jahia 8 and for Jahia 7. Please make sure to review this document prior to deploying the distributed-session module.

Dependencies & Dependants

Dependencies
  • NONE
Dependants
  • NONE

Changelog 4.2.0

Improvements

  • Implemented a session eviction mechanism when maxUsedHeapPercentage goes over a configured threshold (20% by default, modifiable via configuration)

Bug fixes

  • Removed distributed-sessions Server-Availability-Manager probe (added in v4.1.0) as it was causing stability issues.
  • Fixed an issue when redploying a module registering a custom object in distributed sessions. 

Please note that after registering a complex object from a custom module, uninstalling that module or stopping + refreshing wiring of the module will break existing user sessions. This can be addressed by restarting distributed-session, please see the note on that subject in the academy. A dedicated log message was added to Jahia logs when this issue is detected.

Note about Jahia 8.2

When installing distributed session on a Jahia 8.2 installed by a method different than the Installer or the Docker image, you might encounter the following error: "Not Supported: http://javax.xml.XMLConstants/property/accessExternalDTD"

This can be addressed by adding the following to CATALINA_OPTS:

CATALINA_OPTS: -Djavax.xml.validation.SchemaFactory:http://www.w3.org/2001/XMLSchema=com.sun.org.apache.xerces.internal.jaxp.validation.XMLSchemaFactory -Djavax.xml.transform.TransformerFactory=com.sun.org.apache.xalan.internal.xsltc.trax.TransformerFactoryImpl

FAQ

Can I upload a new Jahia license with Distributed Sessions started?

You'll get a error in the Administration UI. Note that this error is harmless and reloading the page will fix the problem.

How To Install

The Jahia Academy contains dedicated documentation detailing distributed session usage for Jahia 8 and for Jahia 7. Please make sure to review this document prior to deploying the distributed-session module.

Images

License

====================================================================================
=                   JAHIA'S DUAL LICENSING - IMPORTANT INFORMATION                                                               =
====================================================================================
  
                                http://www.jahia.com

    Copyright (C) 2002-2017 Jahia Solutions Group SA. All rights reserved.
    
    THIS PROGRAM IS AVAILABLE UNDER TWO DIFFERENT LICENSES:
    1/GPL OR 2/JSEL

    1/ GPL
    ==================================================================================

    IF YOU DECIDE TO CHOOSE THE GPL LICENSE, YOU MUST COMPLY WITH THE FOLLOWING TERMS:

    This program is free software: you can redistribute it and/or modify
        it under the terms of the GNU General Public License as published by
        the Free Software Foundation, either version 3 of the License, or
        (at your option) any later version.

        This program is distributed in the hope that it will be useful,
        but WITHOUT ANY WARRANTY; without even the implied warranty of
        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
        GNU General Public License for more details.

        You should have received a copy of the GNU General Public License
        along with this program.  If not, see <http://www.gnu.org/licenses/>.


    2/ JSEL - Commercial and Supported Versions of the program
    ==================================================================================

    IF YOU DECIDE TO CHOOSE THE JSEL LICENSE, YOU MUST COMPLY WITH THE FOLLOWING TERMS:

    Alternatively, commercial and supported versions of the program - also known as
    Enterprise Distributions - must be used in accordance with the terms and conditions 
    contained in a separate written agreement between you and Jahia Solutions Group SA.

    If you are unsure which license is appropriate for your use,
    please contact the sales department at sales@jahia.com.