Login | Register For Free | Help
Search for: (Advanced)

Mailing List Archive: ModPerl: ModPerl

Apache::Registry executing scripts multiple times

 

 

ModPerl modperl RSS feed   Index | Next | Previous | View Threaded


dave at 1001111

Nov 4, 2009, 2:58 PM

Post #1 of 5 (731 views)
Permalink
Apache::Registry executing scripts multiple times

Hi All,
Please forgive me if the answer is in the docs, I looked without success.
I have a very simple index_test.pl script which appears to get called by Apache::Registry
multiple times. I have tested in single server mode (httpd -X) and still get the same
results. The output is correct but the error_log shows multiple calls from the
Apache::Registry module. While this simple program appears to get called 5 times
our big one was only getting called twice, however, that did have a very noticeable
effect on response time.

We have also removed the Apache::Reload module without effect.

Any ideas, pointers or help appreciated

Dave
###############################################################
Environment:
Apache 1.3.37
mod-perl 1.30
perl 5.8.8
################################################################
Relevent httpd.conf section:

ScriptAlias /metapoint/ "/home/tomcat/metapoint/trunk/"
<Directory "/home/tomcat/metapoint/trunk">
AllowOverride None
SetHandler perl-script
PerlInitHandler Apache::Reload
PerlHandler Apache::Registry
Options ExecCGI
Order allow,deny
Allow from all
</Directory>

################################################################
index_test.pl:

our $i;
print "pre hello $i <br />";
$i++;
my ($package, $filename, $line) = caller();
print STDERR "$package, $filename, $line, $i\n\n";
print "hello $i";
##################################################################
output:
pre hello 84
hello 85
###################################################################
error_log output:
Apache::Registry, /opt/lib/perl5/site_perl/5.8.8/i686-linux/Apache/Registry.pm, 149, 1

Apache::Registry, /opt/lib/perl5/site_perl/5.8.8/i686-linux/Apache/Registry.pm, 149, 1

Apache::Registry, /opt/lib/perl5/site_perl/5.8.8/i686-linux/Apache/Registry.pm, 149, 2

Apache::Registry, /opt/lib/perl5/site_perl/5.8.8/i686-linux/Apache/Registry.pm, 149, 2

Apache::Registry, /opt/lib/perl5/site_perl/5.8.8/i686-linux/Apache/Registry.pm, 149, 3

######################################################################
--
Dave Morgan
1001111 Alberta Limited
dave.morgan [at] 1001111
403 399 2442


pharkins at gmail

Nov 5, 2009, 1:39 PM

Post #2 of 5 (681 views)
Permalink
Re: Apache::Registry executing scripts multiple times [In reply to]

On Wed, Nov 4, 2009 at 5:58 PM, Dave Morgan <dave [at] 1001111> wrote:
> I have a very simple index_test.pl script which appears to get called by Apache::Registry
> multiple times.

I don't see anything in what you've shown us here that would explain
this behavior. I think the problem is in the rest of your httpd.conf,
or your proxy/load-balancer, or your test client.

- Perrin


gozer at ectoplasm

Nov 5, 2009, 1:44 PM

Post #3 of 5 (688 views)
Permalink
Re: Apache::Registry executing scripts multiple times [In reply to]

On 09-11-04 17:58 , Dave Morgan wrote:
> Hi All,
> Please forgive me if the answer is in the docs, I looked without success.
> I have a very simple index_test.pl script which appears to get called by Apache::Registry
> multiple times. I have tested in single server mode (httpd -X) and still get the same
> results. The output is correct but the error_log shows multiple calls from the
> Apache::Registry module. While this simple program appears to get called 5 times
> our big one was only getting called twice, however, that did have a very noticeable
> effect on response time.
>
> We have also removed the Apache::Reload module without effect.
>
> Any ideas, pointers or help appreciated
>
> Dave
> ###############################################################
> Environment:
> Apache 1.3.37
> mod-perl 1.30
> perl 5.8.8
> ################################################################
> Relevent httpd.conf section:
>
> ScriptAlias /metapoint/ "/home/tomcat/metapoint/trunk/"
> <Directory "/home/tomcat/metapoint/trunk">
> AllowOverride None
> SetHandler perl-script
> PerlInitHandler Apache::Reload
> PerlHandler Apache::Registry
> Options ExecCGI
> Order allow,deny
> Allow from all
> </Directory>
>
> ################################################################
> index_test.pl:
>
> our $i;

our ? shouldn't that be my ? our makes that variable a package global,
so it will stick around between requests, just like $some::package::name
would.

--
Philippe M. Chiasson GPG: F9BFE0C2480E7680 1AE53631CB32A107 88C3A5A5
http://gozer.ectoplasm.org/ m/gozer\@(apache|cpan|ectoplasm)\.org/
Attachments: signature.asc (0.24 KB)


adi.yatama at gmail

Nov 5, 2009, 8:20 PM

Post #4 of 5 (690 views)
Permalink
Re: Apache::Registry executing scripts multiple times [In reply to]

HTTP header missing? text/plain

Philippe M. Chiasson wrote:
> On 09-11-04 17:58 , Dave Morgan wrote:
>
>> Hi All,
>> Please forgive me if the answer is in the docs, I looked without success.
>> I have a very simple index_test.pl script which appears to get called by Apache::Registry
>> multiple times. I have tested in single server mode (httpd -X) and still get the same
>> results. The output is correct but the error_log shows multiple calls from the
>> Apache::Registry module. While this simple program appears to get called 5 times
>> our big one was only getting called twice, however, that did have a very noticeable
>> effect on response time.
>>
>> We have also removed the Apache::Reload module without effect.
>>
>> Any ideas, pointers or help appreciated
>>
>> Dave
>> ###############################################################
>> Environment:
>> Apache 1.3.37
>> mod-perl 1.30
>> perl 5.8.8
>> ################################################################
>> Relevent httpd.conf section:
>>
>> ScriptAlias /metapoint/ "/home/tomcat/metapoint/trunk/"
>> <Directory "/home/tomcat/metapoint/trunk">
>> AllowOverride None
>> SetHandler perl-script
>> PerlInitHandler Apache::Reload
>> PerlHandler Apache::Registry
>> Options ExecCGI
>> Order allow,deny
>> Allow from all
>> </Directory>
>>
>> ################################################################
>> index_test.pl:
>>
>> our $i;
>>
>
> our ? shouldn't that be my ? our makes that variable a package global,
> so it will stick around between requests, just like $some::package::name
> would.
>
>


dave at 1001111

Nov 9, 2009, 9:02 AM

Post #5 of 5 (672 views)
Permalink
Re: Apache::Registry executing scripts multiple times [In reply to]

Thanks to all who responded.

It is a development setup so no proxy or load balancer in the mix
I could have sworn I had tested the behaviour in other clients, we use Opera,
so I took the Apache configuration back to bare bones and still had the issue.

Testing with Firefox showed the expected (single call) behaviour.

Fsck, I hate browsers.

Anyway, now to test a simple CGI call and see if the Opera strangeness continues

Thank once again for your help

Dave


Perrin Harkins wrote:
> On Wed, Nov 4, 2009 at 5:58 PM, Dave Morgan <dave [at] 1001111> wrote:
>> I have a very simple index_test.pl script which appears to get called by Apache::Registry
>> multiple times.
>
> I don't see anything in what you've shown us here that would explain
> this behavior. I think the problem is in the rest of your httpd.conf,
> or your proxy/load-balancer, or your test client.
>
> - Perrin


--
Dave Morgan
Senior Consultant, 1001111 Alberta Limited
dave.morgan [at] 1001111
403 399 2442

ModPerl modperl RSS feed   Index | Next | Previous | View Threaded
 
 


Interested in having your list archived? Contact Gossamer Threads
 
  Web Applications & Managed Hosting Powered by Gossamer Threads Inc.