PHP Classes

File: tests/klein/react-1000.php

Recommend this page to a friend!
  Classes of Alexey Dodonov   Mezon Router Benchmark   tests/klein/react-1000.php   Download  
File: tests/klein/react-1000.php
Role: Example script
Content type: text/plain
Description: Example script
Class: Mezon Router Benchmark
Measure the performance of PHP framework routers
Author: By
Last change:
Date: 1 year ago
Size: 1,199 bytes
 

Contents

Class file image Download
<?php

$benchmark
->registerTest(
    function () {
       
$_SERVER['REQUEST_METHOD'] = 'GET';
       
$router = \Mezon\Benchmark\RouteGenerator::generateKleinStaticRoutes(1000);

       
$startTime = microtime(true);
        for (
$i = 0; $i < \Mezon\Benchmark\Base::$iterationsAmount; $i ++) {
           
$_SERVER['REQUEST_URI'] = '/static/' . rand(0, 1000 - 1);
           
$router->dispatch(null, null, true, \Klein\Klein::DISPATCH_CAPTURE_AND_RETURN);
        }
        return
microtime(true) - $startTime;
    },
   
"[klein/react/1000 routes] Resolving static routes %f per second\r\n");

$benchmark->registerTest(
    function () {
       
$_SERVER['REQUEST_METHOD'] = 'GET';
       
$router = \Mezon\Benchmark\RouteGenerator::generateKleinNonStaticRoutes(1000);

       
$startTime = microtime(true);
        for (
$i = 0; $i < \Mezon\Benchmark\Base::$iterationsAmount; $i ++) {
           
$_SERVER['REQUEST_URI'] = '/param/' . rand(0, 1000 - 1).'/1';
           
$router->dispatch(null, null, true, \Klein\Klein::DISPATCH_CAPTURE_AND_RETURN);
        }
        return
microtime(true) - $startTime;
    },
   
"[klein/react/1000 routes] Resolving param. routes %f per second\r\n");