Beefy Boxes and Bandwidth Generously Provided by pair Networks
Clear questions and runnable code
get the best and fastest answer
 
PerlMonks  

(Ovid) Re(3): CGI::Simple vs CGI.pm - Is twice as fast good enough?

by Ovid (Cardinal)
on Feb 16, 2002 at 14:54 UTC ( #145849=note: print w/ replies, xml ) Need Help??


in reply to Re: Re: CGI::Simple vs CGI.pm - Is twice as fast good enough?
in thread CGI::Simple vs CGI.pm - Is twice as fast good enough?

tachyon wrote:

CGI::Simple uses SelfLoader to avoid compiling methods that are rarely used. You do this by placing these methods below a __DATA__ token. At compile time compilation stops at the __DATA__ token.

I didn't notice this part at first. mod_perl scripts cannot contain __DATA__ tokens. Do you have a solution for this? I suppose you can make a separate mod_perl implmentation without the __DATA__ token. Since the performance issue you're resolving is load time, this really doesn't apply in this instance. However, then you have CGI::Simple, CGI::Simple::Standard, and CGI::Simple::mod_perl. I don't see a problem with that if you really need those namespaces to address these issues, but I wonder if others would object.

Cheers,
Ovid

Join the Perlmonks Setiathome Group or just click on the the link and check out our stats.


Comment on (Ovid) Re(3): CGI::Simple vs CGI.pm - Is twice as fast good enough?
Replies are listed 'Best First'.
Re: (Ovid) Re(3): CGI::Simple vs CGI.pm - Is twice as fast good enough?
by tachyon (Chancellor) on Feb 16, 2002 at 17:08 UTC

    Ah says he. Logically you just delete the use SelfLoader and __DATA__ tag. On testing of loadtimes using a version of CGI::Simple without Selfloader and the __DATA__ tag the entire script loads/compiles slower but is still faster than CGI.pm plus all the methods are compiled and ready to go.

    There would seem to be three options. A mod perl version without the __DATA__ tag. Cutting the module into two parts with the less used functions in another module that gets required in a runtime. A CGI.pm type solution.

    I would favour having a CGI::Simple::mod_perl module that is just the standard module without SelfLoader and the __DATA__ tag as this is easiest to maintain and as most scripts need some tuning to use mod_perl so modifying the use CGI::blah should be no big deal.

    In reality under mod_perl there is no good reason not to just use CGI.pm as the load time, size, etc is not an issue and it is well proven.

    cheers

    tachyon

    s&&rsenoyhcatreve&&&s&n.+t&"$'$`$\"$\&"&ee&&y&srve&&d&&print

      In reality under mod_perl there is no good reason not to just use CGI.pm as the load time, size, etc is not an issue and it is well proven.

      In reality under mod_perl there is no good reason not to just use Apache::Request as it is smaller, faster and it is well proven :)

      --
      Ilya Martynov (http://martynov.org/)

Re: (Ovid) Re(3): CGI::Simple vs CGI.pm - Is twice as fast good enough?
by IlyaM (Parson) on Feb 16, 2002 at 22:21 UTC
    I didn't notice this part at first. mod_perl scripts cannot contain __DATA__ tokens.

    Since it only applies to scripts which run under Apache::Registry there should be no problems with CGI::Simple and it's usage of __DATA__ under mod_perl.

    --
    Ilya Martynov (http://martynov.org/)

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others lurking in the Monastery: (8)
As of 2015-07-30 01:30 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The top three priorities of my open tasks are (in descending order of likelihood to be worked on) ...









    Results (269 votes), past polls