The Session module provides objects for maintaining persistent
sessions across requests.
The module contains a BaseSession class, which is not meant to
be used directly (it provides no means of storing a session), and a
DbmSession class, which uses a dbm to store sessions.
The BaseSession class also provides session locking, both
across processes and threads. For locking it uses APR global_mutexes
(a number of them is pre-created at startup) The mutex number is
computed by using modulus of the session id
hash(). (Therefore it's possible that different session
id's will have the same hash, but the only implication is that those
two sessions cannot be locked at the same time resulting in a slight
delay.)