Beefy Boxes and Bandwidth Generously Provided by pair Networks
more useful options
 
PerlMonks  

Re^2: mod_perl / mason - variable shared between apache2's children

by Crackers2 (Vicar)
on May 21, 2009 at 02:14 UTC ( #765364=note: print w/ replies, xml ) Need Help??


in reply to Re: mod_perl / mason - variable shared between apache2's children
in thread mod_perl / mason - variable shared between apache2's children

I think that's irrelevant here. What matters is not _how_ you populate those variables, but the fact that you only want to do it once per server instance.

In ASP and Cold Fusion there's the concept of Application vairables, which are shared between all requests and processes of the server. They were great for configuration options to your application. You'd load them once (from a real config file or a DB most likely; either way relatively slow), and then you could just use the variables in each request without much overhead.

The most common way to emulate these in perl and PHP seems to be populating the variables on each request, which has always seemed somewhat wasteful to me. (when running under mod_perl I suspect there's probably a way to have real shared variables; I've never used Perl much for web programming myself)


Comment on Re^2: mod_perl / mason - variable shared between apache2's children
Re^3: mod_perl / mason - variable shared between apache2's children
by trwww (Priest) on May 21, 2009 at 15:47 UTC

    Right, its not how but when. If you have some read only data (config data), load it before apache forks its children and apache will share the memory without duplicating it in each child.

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://765364]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others scrutinizing the Monastery: (6)
As of 2014-08-31 08:30 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The best computer themed movie is:











    Results (294 votes), past polls