use SOAP::Transport::HTTP;
my $daemon = SOAP::Transport::HTTP::Daemon
-> new (LocalPort => 8080, Reuse => 1)
# register serializer
-> dispatch_to( qw(Server::Benchmark) )
;
print "Contact to SOAP server at ", $daemon->url, "\n";
$daemon->handle;
package Server::Benchmark;
sub ping {
print "-";
return time;
}
####
use SOAP::Lite;
my $soap = SOAP::Lite
-> uri('http://localhost/Server/Benchmark')
-> proxy('http://host_1_server:8080');
foreach ( 1 .. 1000 ) {
$soap->ping(1)->result;
}
####
$ dprofpp -F
HTTP::Daemon::ClientConn::send_response has 1 unstacked calls in outer
SOAP::Transport::HTTP::Daemon::handle has 1 unstacked calls in outer
Faking 2 exit timestamp(s).
Total Elapsed Time = -5.19496 Seconds
User+System Time = 0 Seconds
Exclusive Times
%Time ExclSec CumulS #Calls sec/call Csec/c Name
0.00 1.114 1.907 15984 0.0001 0.0001 SOAP::SOM::_traverse
0.00 0.550 0.550 26973 0.0000 0.0000 HTTP::Headers::_header
0.00 0.536 2.027 8991 0.0001 0.0002 SOAP::Serializer::encode_object
0.00 0.520 1.386 1997 0.0003 0.0007 HTTP::Daemon::ClientConn::get_requ
est
0.00 0.425 0.560 75924 0.0000 0.0000 SOAP::Data::new
0.00 0.340 0.890 3996 0.0001 0.0002 SOAP::Deserializer::decode_value
0.00 0.308 1.091 3996 0.0001 0.0003 SOAP::Deserializer::decode_object
0.00 0.284 0.284 4007 0.0001 0.0001 utf8::SWASHNEW
0.00 0.254 0.254 3998 0.0001 0.0001 SOAP::Lite::soapversion
0.00 0.246 8.625 999 0.0002 0.0086 SOAP::Server::handle
... cut ...
####
$ dprofpp -F
... warnings cutted ...
Total Elapsed Time = 39.24819 Seconds
User+System Time = 6.028192 Seconds
Exclusive Times
%Time ExclSec CumulS #Calls sec/call Csec/c Name
14.5 0.874 1.246 19000 0.0000 0.0001 SOAP::SOM::_traverse
6.44 0.388 1.346 9000 0.0000 0.0001 SOAP::Serializer::encode_object
6.34 0.382 0.382 29001 0.0000 0.0000 HTTP::Headers::_header
4.64 0.280 0.894 4000 0.0001 0.0002 SOAP::Deserializer::decode_object
4.28 0.258 0.258 1002 0.0003 0.0003 SOAP::Lite::soapversion
4.08 0.246 0.756 4000 0.0001 0.0002 SOAP::Deserializer::decode_value
3.05 0.184 0.184 68000 0.0000 0.0000 SOAP::Data::new
2.75 0.166 1.921 1000 0.0002 0.0019 LWP::Protocol::http::request
2.26 0.136 0.886 13000 0.0000 0.0001 SOAP::SOM::_traverse_tree
1.99 0.120 0.272 15000 0.0000 0.0000 SOAP::Data::name
1.96 0.118 0.118 61008 0.0000 0.0000 SOAP::Serializer::new
1.96 0.118 0.224 59002 0.0000 0.0000 SOAP::Serializer::__ANON__
1.92 0.116 0.116 2000 0.0001 0.0001 IO::Socket::INET::_sock_info
1.92 0.116 2.893 1000 0.0001 0.0029 SOAP::Transport::HTTP::Client::sen
d_receive
1.89 0.114 0.000 3002 0.0000 0.0000 utf8::SWASHNEW