DEV Community

alexdodonov
alexdodonov

Posted on • Edited on

New PHP router wich is 30 to 50 times faster then Laravel router

Intro

Hello everybody! It is time to benchmark another well known router - Laravel router (to be precise - Illuminate\Routing).

Like in the previous articles we shall test static routes and routes with parameters in them.

Static routes we shall benchmark in this way:

// repeat this in loop
with(new Illuminate\Routing\RoutingServiceProvider($app))->register();
$app['router']->get('/static', function () {
    return 'static';
});
$request = Illuminate\Http\Request::createFromGlobals();
$app['router']->dispatch($request);
Enter fullscreen mode Exit fullscreen mode

And routes with parameters will be benchmarked like this:

with(new Illuminate\Routing\RoutingServiceProvider($app))->register();
$app['router']->get('/{id}', function () {
    return 'param';
});
$request = Illuminate\Http\Request::createFromGlobals();
$app['router']->dispatch($request);
Enter fullscreen mode Exit fullscreen mode

Results are quite astonishing (the bigger numbers you see, the better it is)!

laravel-comparison

laravel-router

As you can see - Mezon router is 30 to 50 times faster than Laravel!!!

Learn more

More information can be found here:

Twitter
Mezon Framework

What is mezon/router?

mezon/router now is:

  • framework for routing with 100% code coverage
  • 10.0 points on scrutinizer-ci.com
  • router is a part of the Mezon Project

Repo on github.com: https://github.com/alexdodonov/mezon-router

It will be great if you will contribute something to this project. Documentation, sharing the project in your social media, bug fixing, refactoring, or even submitting issue with question or feature request. Thanks anyway )

Top comments (5)

Collapse
 
iceorfiresite profile image
Ice or Fire

Can it be used in laravel?

Collapse
 
alexdodonov profile image
alexdodonov

I am sure it can, but I don't know how ))
I shall add in my content plan to write an article about it.

Collapse
 
bozhkos profile image
KB • Edited

This is nice, but how many apps will really need that speed? In my experience, good portion of apps will never ever go beyond 600 req/sec

Collapse
 
alexdodonov profile image
alexdodonov

It is usefull to have opportunity to execute 20K req/sec.

By the way 600 req/sec is not too much nowdays.

And thanks for your comment )

Collapse
 
alexdodonov profile image
alexdodonov

Any comments? )