diff options
Diffstat (limited to 'bench.php')
-rw-r--r-- | bench.php | 76 |
1 files changed, 0 insertions, 76 deletions
diff --git a/bench.php b/bench.php deleted file mode 100644 index 130761b..0000000 --- a/bench.php +++ /dev/null @@ -1,76 +0,0 @@ -<?php - -//ini_set('memory_limit' ,'128M'); - -$ary = get_loaded_extensions(); -for($i=0; $i<pow(2, 9); $i++){ - $ary = array_merge($ary, range(0, 1024)); - $ary[] = md5("$i"); -} - -echo "count:".count($ary)."\n"; - -function getSize($ary) -{ - if (ini_get('mbstring.func_overload') & 2 && function_exists('mb_strlen')) { - $size = mb_strlen($ary, 'ASCII'); - } else { - $size = strlen($ary); - } - - return $size; -} - -echo "----\n"; -echo "PHP\n"; -$a = microtime(true); -$packed = serialize($ary); -$b = microtime(true); -echo ($refpck=($b-$a)) . " sec, " . ($refsize=getSize($packed)) . " bytes\n"; - -$a = microtime(true); -$pack = unserialize($packed); -$b = microtime(true); -echo ($refunp=($b-$a)) . " sec\n"; - - -echo "----\n"; -echo "IgBinary\n"; -$a = microtime(true); -$packed = igbinary_serialize($ary); -$b = microtime(true); -echo ($t=($b-$a)) . " sec, " . round($t*100/$refpck) . "%, ". ($x=getSize($packed)) . " bytes, ".round($x*100/$refsize)."%\n"; - -$a = microtime(true); -$pack = igbinary_unserialize($packed); -$b = microtime(true); -echo ($t=($b-$a)) . " sec, " . round($t*100/$refunp) . "%\n"; - - -echo "----\n"; -echo "MessagePack\n"; -$a = microtime(true); -$packed = msgpack_pack($ary); -$b = microtime(true); -echo ($t=($b-$a)) . " sec, " . round($t*100/$refpck) . "%, ". ($x=getSize($packed)) . " bytes, ".round($x*100/$refsize)."%\n"; - -$a = microtime(true); -$pack = msgpack_unpack($packed); -$b = microtime(true); -echo ($t=($b-$a)) . " sec, " . round($t*100/$refunp) . "%\n"; - - -echo "----\n"; -echo "JSON\n"; -$a = microtime(true); -$jsoned = json_encode($ary); -$b = microtime(true); -echo ($t=($b-$a)) . " sec, " . round($t*100/$refpck) . "%, ". ($x=getSize($jsoned)) . " bytes, ".round($x*100/$refsize)."%\n"; - -$a = microtime(true); -$json = json_decode($jsoned); -$b = microtime(true); -echo ($t=($b-$a)) . " sec, " . round($t*100/$refunp) . "%\n"; - - -?> |