Beefy Boxes and Bandwidth Generously Provided by pair Networks
P is for Practical
 
PerlMonks  

Re: Using CGI::Application in large projects

by rob_au (Abbot)
on Jan 22, 2003 at 09:50 UTC ( #228978=note: print w/replies, xml ) Need Help??


in reply to Using CGI::Application in large projects

In such a scenario, I would look at the manner by which the dispatch is ordered, seeking for any hierarchy which may be utilised to further define run-modes - I would then separate those group run-modes of similar functionality into separate dispatches. These separate dispatches could then be moved into separate scripts with a shared server-side backend where required.

If this was not possible, I would investigate the dynamic loading and unloading of module components through the use of the use and no module functions - This should allow memory to be allocated and freed as necessary but the details of whether this memory is returned to the system is dependent upon the runtime C library.

In any case, I would be incorporating the CGI::Application dispatch into the apache binary with mod_perl. Based upon the intended scope of the project described, the performance advantage of employing mod_perl cannot be ignored.

 

perl -le 'print+unpack("N",pack("B32","00000000000000000000001000100100"))'

Replies are listed 'Best First'.
Re: Re: Using CGI::Application in large projects
by IlyaM (Parson) on Jan 22, 2003 at 15:49 UTC
    Since both mod_perl and dynamic loading and unloading have been mentioned in same post I'd like to mention that dynamic loading of modules should be avoided in mod_perl scenario as it actually wastes more RAM. You should try to preload all modules you use during server startup. It is covered in mod_perl guide.

    Another note is that no Module doesn't unload module. It simply calls module's unimport method. See perlfunc:use.

    --
    Ilya Martynov, ilya@iponweb.net
    CTO IPonWEB (UK) Ltd
    Quality Perl Programming and Unix Support UK managed @ offshore prices - http://www.iponweb.net
    Personal website - http://martynov.org

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others chilling in the Monastery: (4)
As of 2020-12-03 01:29 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    How often do you use taint mode?





    Results (49 votes). Check out past polls.

    Notices?