G . Sumner Hayes
SumnerH at fool.com
Tue May 29 13:03:49 EST 2001
Gregory (Grisha) Trubetskoy <grisha at modpython.org> wrote: > Since Apache 1.3 runs multiple processes, it is impossible to share memory > between them and therefore maintain state in the server. You can use either shared mmap or SysV shared mem (there are python modules for both) to share memory. I wound up writing a Python shared dictionary (just pickles objects into the filesystem when you set them, and unpickles them when you read them) for my shared state, though I don't share user sessions--I share things like parsed template files and other cacheable server-side objects that require an expensive calculation the first time they're read in. Same idea would work for user sessions, and since it's in the filesystem the kernel will take care of buffering for you and you can use tools like "find" and "rm" to prune the cache. :-) I agree with Grisha that you probably want to keep state on the clients if you can, though. Sumner -- rage, rage against the dying of the light
|