[nycphp-talk] Using shared data at the server level

Steve Manes smanes at
Sun Mar 16 14:18:12 EST 2003

>For example, lets say I wanted to have a page counter on every page.
>Ideally, I'd just have a variable which is read/write by any php process on
>the server. Something like this:
>$my_super_global ++;
>print "this is page view $my_super_global";
>One way is to use the file system.
>This or course is pretty simple, but since the file needs to be updated
>every single request, I'm thinking it would be faster to use memory.

This will bind your web application to a single physical web server 
though.  For fluffy stuff that doesn't really matter all that much, like a 
page counter, I'd serve the count from a static cache, refreshing it every 
X hours from an asynchronous script.  In fact, I might have the script do 
that via an access log scan rather than having the web server update the 
database at every page load.

mod_perl has Apache::Storable for maintaining serialized, persistent data 
across connections.  There's a freshmeat knock-off of Storable for PHP but 
it sounds like it uses disk storage while I believe that Apache::Storable 
freezes structures in memory and writes them to disk on request:

More information about the talk mailing list