[Phpfreechat-svn] SF.net SVN: phpfreechat: [1139] branches/pfc-comet/misc
Status: Beta
Brought to you by:
kerphi
From: <ke...@us...> - 2007-08-21 16:59:42
|
Revision: 1139 http://phpfreechat.svn.sourceforge.net/phpfreechat/?rev=1139&view=rev Author: kerphi Date: 2007-08-21 09:59:45 -0700 (Tue, 21 Aug 2007) Log Message: ----------- some tests to know if using opendir to get the filename with the higher integer is faster than to read a simple index file Added Paths: ----------- branches/pfc-comet/misc/opendir-perf-test/ branches/pfc-comet/misc/opendir-perf-test/dir_to_test/ branches/pfc-comet/misc/opendir-perf-test/dir_to_test/664 branches/pfc-comet/misc/opendir-perf-test/dir_to_test/665 branches/pfc-comet/misc/opendir-perf-test/dir_to_test/666 branches/pfc-comet/misc/opendir-perf-test/dir_to_test/667 branches/pfc-comet/misc/opendir-perf-test/dir_to_test/668 branches/pfc-comet/misc/opendir-perf-test/dir_to_test/669 branches/pfc-comet/misc/opendir-perf-test/dir_to_test/670 branches/pfc-comet/misc/opendir-perf-test/dir_to_test/671 branches/pfc-comet/misc/opendir-perf-test/dir_to_test/672 branches/pfc-comet/misc/opendir-perf-test/dir_to_test/673 branches/pfc-comet/misc/opendir-perf-test/dir_to_test/674 branches/pfc-comet/misc/opendir-perf-test/dir_to_test/675 branches/pfc-comet/misc/opendir-perf-test/dir_to_test/676 branches/pfc-comet/misc/opendir-perf-test/dir_to_test/677 branches/pfc-comet/misc/opendir-perf-test/dir_to_test/678 branches/pfc-comet/misc/opendir-perf-test/dir_to_test/679 branches/pfc-comet/misc/opendir-perf-test/dir_to_test/680 branches/pfc-comet/misc/opendir-perf-test/dir_to_test/681 branches/pfc-comet/misc/opendir-perf-test/dir_to_test/682 branches/pfc-comet/misc/opendir-perf-test/dir_to_test/683 branches/pfc-comet/misc/opendir-perf-test/dir_to_test/684 branches/pfc-comet/misc/opendir-perf-test/indexfile-read.php branches/pfc-comet/misc/opendir-perf-test/indexfile-write.php branches/pfc-comet/misc/opendir-perf-test/indexfile_to_test/ branches/pfc-comet/misc/opendir-perf-test/indexfile_to_test/index branches/pfc-comet/misc/opendir-perf-test/opendir-read.php branches/pfc-comet/misc/opendir-perf-test/opendir-write.php Added: branches/pfc-comet/misc/opendir-perf-test/dir_to_test/664 =================================================================== Added: branches/pfc-comet/misc/opendir-perf-test/dir_to_test/665 =================================================================== Added: branches/pfc-comet/misc/opendir-perf-test/dir_to_test/666 =================================================================== Added: branches/pfc-comet/misc/opendir-perf-test/dir_to_test/667 =================================================================== Added: branches/pfc-comet/misc/opendir-perf-test/dir_to_test/668 =================================================================== Added: branches/pfc-comet/misc/opendir-perf-test/dir_to_test/669 =================================================================== Added: branches/pfc-comet/misc/opendir-perf-test/dir_to_test/670 =================================================================== Added: branches/pfc-comet/misc/opendir-perf-test/dir_to_test/671 =================================================================== Added: branches/pfc-comet/misc/opendir-perf-test/dir_to_test/672 =================================================================== Added: branches/pfc-comet/misc/opendir-perf-test/dir_to_test/673 =================================================================== Added: branches/pfc-comet/misc/opendir-perf-test/dir_to_test/674 =================================================================== Added: branches/pfc-comet/misc/opendir-perf-test/dir_to_test/675 =================================================================== Added: branches/pfc-comet/misc/opendir-perf-test/dir_to_test/676 =================================================================== Added: branches/pfc-comet/misc/opendir-perf-test/dir_to_test/677 =================================================================== Added: branches/pfc-comet/misc/opendir-perf-test/dir_to_test/678 =================================================================== Added: branches/pfc-comet/misc/opendir-perf-test/dir_to_test/679 =================================================================== Added: branches/pfc-comet/misc/opendir-perf-test/dir_to_test/680 =================================================================== Added: branches/pfc-comet/misc/opendir-perf-test/dir_to_test/681 =================================================================== Added: branches/pfc-comet/misc/opendir-perf-test/dir_to_test/682 =================================================================== Added: branches/pfc-comet/misc/opendir-perf-test/dir_to_test/683 =================================================================== Added: branches/pfc-comet/misc/opendir-perf-test/dir_to_test/684 =================================================================== Added: branches/pfc-comet/misc/opendir-perf-test/indexfile-read.php =================================================================== --- branches/pfc-comet/misc/opendir-perf-test/indexfile-read.php (rev 0) +++ branches/pfc-comet/misc/opendir-perf-test/indexfile-read.php 2007-08-21 16:59:45 UTC (rev 1139) @@ -0,0 +1,22 @@ +<?php + +require_once dirname(__FILE__)."/../../src/pfctools.php"; + +$uid = md5(uniqid(rand(), true)); +$indexfile = dirname(__FILE__)."/indexfile_to_test/index"; +$delay = 1000; // 1000 = 1 ms + +$time = 0; +while(1) +{ + + $time = microtime(); + if (!file_exists($indexfile)) die(); + + $max = file_get_contents_flock($indexfile); + + echo "[".$uid."] max is ".$max.", dtime = ".(microtime()-$time)."\n"; + usleep($delay); +} + +?> Added: branches/pfc-comet/misc/opendir-perf-test/indexfile-write.php =================================================================== --- branches/pfc-comet/misc/opendir-perf-test/indexfile-write.php (rev 0) +++ branches/pfc-comet/misc/opendir-perf-test/indexfile-write.php 2007-08-21 16:59:45 UTC (rev 1139) @@ -0,0 +1,24 @@ +<?php + +require_once dirname(__FILE__)."/../../src/pfctools.php"; + +$uid = md5(uniqid(rand(), true)); +$indexfile = dirname(__FILE__)."/indexfile_to_test/index"; +$delay = 1000000; // 1000 = 1 ms + +$time = 0; +while(1) +{ + + $time = microtime(); + if (!file_exists($indexfile)) die(); + + $max = file_get_contents_flock($indexfile); + $max++; + file_put_contents($indexfile, $max, LOCK_EX); + + echo "[".$uid."] max is ".$max.", dtime = ".(microtime()-$time)."\n"; + usleep($delay); +} + +?> Added: branches/pfc-comet/misc/opendir-perf-test/indexfile_to_test/index =================================================================== --- branches/pfc-comet/misc/opendir-perf-test/indexfile_to_test/index (rev 0) +++ branches/pfc-comet/misc/opendir-perf-test/indexfile_to_test/index 2007-08-21 16:59:45 UTC (rev 1139) @@ -0,0 +1 @@ +136 \ No newline at end of file Added: branches/pfc-comet/misc/opendir-perf-test/opendir-read.php =================================================================== --- branches/pfc-comet/misc/opendir-perf-test/opendir-read.php (rev 0) +++ branches/pfc-comet/misc/opendir-perf-test/opendir-read.php 2007-08-21 16:59:45 UTC (rev 1139) @@ -0,0 +1,35 @@ +<?php + +$uid = md5(uniqid(rand(), true)); +$dir = dirname(__FILE__)."/dir_to_test"; +$delay = 1000; // 1000 = 1 ms + +$time = 0; +while(1) +{ + + $time = microtime(); + if (!is_dir($dir)) return false; + + $list = array(); + if ($dh = opendir($dir)) + { + while (($file = readdir($dh)) !== false) + if ($file != '.' && $file != '..' && $file != '.svn') + $list[] = $file; + closedir($dh); + } + + sort($list); + if (count($list)>0) + $max = $list[count($list)-1]; + else + $max = -1; + //foreach($list as $i) + // if ($max == -1 || $max < $i) + // $max = $i; + echo "[".$uid."] max is ".$max.", dtime = ".(microtime()-$time)."\n"; + usleep($delay); +} + +?> Added: branches/pfc-comet/misc/opendir-perf-test/opendir-write.php =================================================================== --- branches/pfc-comet/misc/opendir-perf-test/opendir-write.php (rev 0) +++ branches/pfc-comet/misc/opendir-perf-test/opendir-write.php 2007-08-21 16:59:45 UTC (rev 1139) @@ -0,0 +1,36 @@ +<?php + +$dir = dirname(__FILE__)."/dir_to_test"; +$limit = 20; + +while(1) +{ + if (!is_dir($dir)) return false; + + $list = array(); + if ($dh = opendir($dir)) + { + while (($file = readdir($dh)) !== false) + if ($file != '.' && $file != '..' && $file != '.svn') + $list[] = $file; + closedir($dh); + } + + sort($list); + if (count($list)>0) + { + $min = $list[0]; + $max = $list[count($list)-1]; + } + else + { + $max = 0; + $min = 0; + } + touch($dir.'/'.($max+1)); + @unlink($dir.'/'.($max-$limit)); + echo "min = $min, max = $max\n"; + sleep(1); +} + +?> This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |