New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
IO::Socket::INET performance PROBLEMS! #14948
Comments
From konstantin.kokin@gmail.comHello Perl Developers! I suppose I found strange bug. I started small web server and discovered Perl version v5.14.4 Bencmark utility and command.[root]# ab -c 10 -n 3000 http://94.140.102.10:1080/monitor.html Code of the programm#!/usr/bin/perl my $res = HTTP::Response->new(RC_OK); $|++; for ( 1 .. 4 ) { my $pid = fork; while ( my $r = $c->get_request ) { if ( $r->method eq 'GET' ) { #and $r->url->path eq "/monitor.html" ) { } while (1); ==================================================== No LocalAddr declaration Connection Times (ms) Percentage of the requests served within a certain time (ms) With LocalAddr declaration. Connection Times (ms) Percentage of the requests served within a certain time (ms) Try it by yourself it's very easy to reproduce. Regards, |
From @leonerdOn Wed, 30 Sep 2015 07:17:19 -0700
Surely that one single request that took much longer, was the name You might want to see if similar happens with IO::Socket::IP; as that -- leonerd@leonerd.org.uk |
The RT System itself - Status changed from 'new' to 'open' |
From konstantin.kokin@gmail.comHello LeoNerd! Probably, you get little bit wrong. Let me describe more details to clarify 1) I don't use dns record for this test. You can see it from benchmarks I'm working with networking on BSD and Linux more than 15 year and I really If you want, we can appoint a meeting in Skype or whatever and will Regards,
Surely that one single request that took much longer, was the name You might want to see if similar happens with IO::Socket::IP; as that -- leonerd@leonerd.org.uk |
From Mark@Overmeer.net* Konstantin Kokin (konstantin.kokin@gmail.com) [151001 03:24]:
I tried your script on Linux: there is only 1 elapse very slow, it does It does very much depend on the value of parameter '-c' of ab (in my case
LeoNerd is experienced as well. If I make the '-c' small, the extra-ordinary slow is fast. When I make Mark Overmeer MSc MARKOV Solutions |
From tsibley@cpan.orgOn Thu Oct 01 00:12:26 2015, Mark@Overmeer.net wrote:
Indeed, every call to $c->get_request() calls $d->url, which calls gethostbyaddr() in https://github.com/gisle/http-daemon/blob/master/lib/HTTP/Daemon.pm#L51 strace is also a good tool for finding DNS queries where you don't expect it. Thomas |
From @iabynOn Mon, Oct 05, 2015 at 10:45:42PM -0700, Thomas Sibley via RT wrote:
Given that the 5000ms delays are almost certainly due to to HTTP::Daemon -- |
From @jkeenanDave indicated he was rejecting the ticket, but didn't actually change the status. Doing so now. |
@jkeenan - Status changed from 'open' to 'rejected' |
Migrated from rt.perl.org#126224 (status was 'rejected')
Searchable as RT126224$
The text was updated successfully, but these errors were encountered: