durusmail: quixote-users: SCGI and session bug.
SCGI and session bug.
quixote - zodb session example, was session bug
2003-07-18
2003-07-17
2003-07-25
SCGI and session bug.
Hugo van der Merwe
2003-07-25
> If you want to use multiple processes (as SCGI does) then you need to
> have some way of sharing session information between processes.  We use
> ZODB and it makes the problem trivial.  You could use some other
> database or roll your own solution.

Seeing as I use postgres for the rest of my application, it is
probably most sensible to implement a session manager that stores
sessions in a postgresql database. I considered this, pickling the
sessions, but first checked to see if I couldn't get away with not
doing this work.

There is of course DirMapping. The only filesystem on my webserver
using reiserfs is /tmp, so if I can figure out "secure tempdir
creation", maybe I should use DirMapping in /tmp? I also looked at
shelve, thought that's the way to go, except that merely doing:

(WebsitePublisher.__init__)
        sessionmapping = shelve.open('/var/www-data/quixote-sessions')
        kwargs['session_mgr'] = SessionManager(WebsiteSession,
                                               sessionmapping)

doesn't work - the data never gets flushed to disk. I create at least
one session then open the file with shelve in an interactive
interpreter, it contains no keys... (I derive from SessionPublisher,
since I use scgi, and I can't easily pass parameters to the
publisher.)

So is DirMapping with reiserfs the simplest, and not too much worse
than, the best solution?

Thanks,
Hugo van der Merwe
--
The earth's surface is accelerating outward at 9.8 meters per sec^2
1024D/60715698: 5F2E 8EC2 E0A4 5D25 0569  F281 4A6C D76D 6071 5698
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.2 (GNU/Linux)

iD8DBQE/IQ3uSmzXbWBxVpgRAuZRAKCaGnLUasUvlTIZB+sXOr+U6VnMhgCfczmm
QcctvzA5KEoqdaixFbiznbk=
=O7kG
-----END PGP SIGNATURE-----
reply