[Zope-dev] Sharing session between different zope servers

Hanno Schlichting hanno at hannosch.eu
Wed Jun 15 13:19:38 EDT 2011


On Wed, Jun 15, 2011 at 6:50 PM, Subish K S <kssubish999 at yahoo.com> wrote:
> We have 10+ Zope  (version 2.7) servers ( on different machines). Right now each Zope server independently handles session management which means that if a Zope server fails the users on that Zope server do not get redirected to a functioning Zope server but get "stuck" on the failed Zope server.
> Is there any way to manage the session of all the zopes servers in a common place.

If you have only a moderate number of sessions, you can store the
session storage on the ZEO server. If you use buildout you'd do
something like:

[zeo]
recipe = plone.recipe.zeoserver
...
zeo-conf-additional =
    %import tempstorage
    <temporarystorage temp>
        name temp storage for sessioning
    </temporarystorage>


[instance1]
recipe = plone.recipe.zope2instance
...
zodb-temporary-storage =
    <zodb_db temporary>
        mount-point /temp_folder
        <zeoclient>
            server 10.0.0.1:8100
            storage temp
            name zeo-temp-storage
        </zeoclient>
    </zodb_db>

The config is the same if you just put these straight into zope.conf
and zeo.conf. Zope 2's built-in session machinery should handle a
couple dozen sessions at a time. Once you go beyond that look at
Beaker (via collective.beaker) and memcached as a backend.

This does apply to the currently supported Zope 2 versions (2.12 &
2.13). I have no idea what of this works in the ancient 2.7.

Hanno


More information about the Zope-Dev mailing list