What is the PHP Shared Memory Allocation (mm, compiled --with-mm) session module?
Have you used it? Have you tested it? Does it work good? Did you have session locking problems?
It's easy to view the contents of your session data when using files or a custom session handler (like a database), but is it possible to view the session data with this module? Personal reasons for wanting to view the session data would be to (1) test PHP garbage collection is working properly and (2) make sure it isn't hogging all the system memory.
I think it used to be a separate (PECL? Zend?) extension, but now it's in core.
The only requirement to compile it into the PHP binary are the OSSP mm headers, which is a small ~330k download.
$ ./configure --help
// --with-mm=DIR SESSION: Include mm support for session storage
The only info I could find was from a message board post in 2006 referencing a now-missing Zend session tutorial page [404], from which the author quoted:
If you need higher performance, the mm module is a viable alternative; it stores the data in shared memory and is therefore not limited by the hardware I/O system.
I understand two of it's limitations:
(1) Note that the session storage module for mm does not guarantee that concurrent accesses to the same session are properly locked. It might be more appropriate to use a shared memory based filesystem (such as tmpfs on Solaris/Linux, or /dev/md on BSD) to store sessions in files, because they are properly locked. (2) Session data is stored in memory thus web server restart deletes it.
I'd really like a canonical description, but any and all info is appreciated.
archive.org
, the contents of the original page can be found here: web.archive.org/web/20070207084440/http://devzone.zend.com/node/…