From: Michael Wallner Date: Thu, 10 Dec 2009 15:08:35 +0000 (+0000) Subject: some verbosity adjustments X-Git-Tag: RELEASE_1_6_6~3 X-Git-Url: https://git.m6w6.name/?p=m6w6%2Fext-http;a=commitdiff_plain;h=a3d5c57e92d773fb4bab2b5a1566bc0e8b9ce5a5 some verbosity adjustments --- diff --git a/scripts/bench_select_vs_event.php b/scripts/bench_select_vs_event.php index 589f31e..8ae0706 100644 --- a/scripts/bench_select_vs_event.php +++ b/scripts/bench_select_vs_event.php @@ -4,11 +4,12 @@ class pool extends HttpRequestPool { private $url; private $cnt; - static function fetch($url, $n, $c, $e) { + static function fetch($url, $n, $c, $e, $p) { $pool = new pool; $pool->url = $url; $pool->cnt = $n; + $pool->enablePipelining($p); $pool->enableEvents($e); for ($i = 0; $i < $c; ++$i) { @@ -26,6 +27,10 @@ class pool extends HttpRequestPool { request::init($this, $this->url)->id = $this->cnt--; } } + + function cnt() { + return $this->cnt; + } } class request extends HttpRequest { @@ -35,6 +40,7 @@ class request extends HttpRequest { private $pool; static function init(pool $pool, $url) { + #printf("init %d\n", $pool->cnt()); $r = new request($url); $r->pool = $pool; $pool->attach($r); @@ -42,6 +48,8 @@ class request extends HttpRequest { } function onFinish() { + #printf("left %d\n", count($this->pool)); + #printf("done %d\n", $this->id); ++self::$counter; $this->pool->detach($this); $this->pool->push(); @@ -50,7 +58,7 @@ class request extends HttpRequest { function usage() { global $argv; - fprintf(STDERR, "Usage: %s -u -n -c -e (use libevent)\n", $argv[0]); + fprintf(STDERR, "Usage: %s -u -n -c -e (use libevent) -p (use pipelining)\n", $argv[0]); fprintf(STDERR, "\nDefaults: -u http://localhost/ -n 1000 -c 10\n\n"); exit(-1); } @@ -58,15 +66,20 @@ function usage() { isset($argv) or $argv = $_SERVER['argv']; defined('STDERR') or define('STDERR', fopen('php://stderr', 'w')); -$opts = getopt("u:c:n:e"); +$opts = getopt("u:c:n:ep"); #var_dump($opts); isset($opts["u"]) or $opts["u"] = "http://localhost/"; isset($opts["c"]) or $opts["c"] = 10; -isset($opts["n"]) or $opts["n"] = 1000; +isset($opts["n"]) or $opts["n"] = 500; http_parse_message(http_head($opts["u"]))->responseCode == 200 or usage(); $time = microtime(true); -pool::fetch($opts["u"], $opts["n"], $opts["c"], isset($opts["e"])); +pool::fetch($opts["u"], $opts["n"], $opts["c"], isset($opts["e"]), isset($opts["p"])); printf("\n> %10.6fs\n", microtime(true)-$time); -request::$counter == $opts["n"] or printf("\nOnly %d finished\n", request::$counter); +printf("\nMemory usage: %s/%s\n", number_format(memory_get_usage()),number_format(memory_get_peak_usage())); + +if (request::$counter != $opts["n"]) { + printf("\nOnly %d finished\n", request::$counter); + exit(1); +}