* (bug 12294) Namespace class renamed to MWNamespace for PHP 5.3 compatibility
[lhc/web/wiklou.git] / maintenance / benchmarkPurge.php
index bc31b9b..0ceb844 100644 (file)
@@ -1,9 +1,13 @@
 <?php
+/**
+ * Squid purge benchmark script
+ * @addtogroup Maintenance
+ */
 
-/* Squid purge benchmark script */
-
+/** */
 require_once( "commandLine.inc" );
 
+/** @todo document */
 function benchSquid( $urls, $trials = 1 ) {
        $start = wfTime();
        for( $i = 0; $i < $trials; $i++) {
@@ -16,6 +20,7 @@ function benchSquid( $urls, $trials = 1 ) {
                count( $urls ), $pertrial * 1000.0, $pertitle * 1000.0 );
 }
 
+/** @todo document */
 function randomUrlList( $length ) {
        $list = array();
        for( $i = 0; $i < $length; $i++ ) {
@@ -24,11 +29,13 @@ function randomUrlList( $length ) {
        return $list;
 }
 
+/** @todo document */
 function randomUrl() {
        global $wgServer, $wgArticlePath;
        return $wgServer . str_replace( '$1', randomTitle(), $wgArticlePath );
 }
 
+/** @todo document */
 function randomTitle() {
        $str = '';
        $length = mt_rand( 1, 20 );
@@ -39,16 +46,18 @@ function randomTitle() {
 }
 
 if( !$wgUseSquid ) {
-       die( "Squid purge benchmark doesn't do much without squid support on.\n" );
+       wfDie( "Squid purge benchmark doesn't do much without squid support on.\n" );
 } else {
        printf( "There are %d defined squid servers:\n", count( $wgSquidServers ) );
-       echo implode( "\n", $wgSquidServers ) . "\n";
-       $lengths = array( 1, 10, 100 );
+       #echo implode( "\n", $wgSquidServers ) . "\n";
+       if( isset( $options['count'] ) ) {
+               $lengths = array( intval( $options['count'] ) );
+       } else {
+               $lengths = array( 1, 10, 100 );
+       }
        foreach( $lengths as $length ) {
                $urls = randomUrlList( $length );
-               $trial = benchSquid( $urls, 4 );
+               $trial = benchSquid( $urls );
                print "$trial\n";
        }
 }
-
-?>