Hi all, I was testing the stability of modperl under high loads (Apache sometimes crashes with an error message on my Windows 2000, but once I close the message, it's ok again), and I wrote this very simple client code:
 
use strict;
use warnings;
#use SOAP::Lite +trace=>'all';
use SOAP::Lite;
use threads;
 
$|=1;
foreach my $index (1..80)
{
 threads->new(\&loadTest,$index);
}
while (1) { sleep (100); }
 
sub loadTest
{
 my ($index) = @_;
 
 print "Starting thread #".$index."\n";
 my $client = SOAP::Lite
  ->uri('SimpleApache/SOAP')
  ->proxy('http://localhost:7080/soap/')
  ->on_fault(sub{print STDERR "Cannot connect to SOAP server\n";return undef;});
 
 while (1)
 {
  my $result = $client->ping;
  next if (!$result);
  print "$index-".$result->result.' ';
 }
}
Notice that I created 80 threads. Seems that after running for a short a while I get the attached error message. I also noticed that my memory dropped like crazy during runtime. The perl client died, but Apache survived (hence my attempt to crash Apache myself failed).
 
Does anyone know what causes the attached message to appear? Short of memory (for my system it wasn't at 0 yet; about 17MB of physical memory left)?

Attachment: error.gif
Description: GIF image

_______________________________________________
Perl-Win32-Users mailing list
Perl-Win32-Users@listserv.ActiveState.com
To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs

Reply via email to