Joan Miquel 8684e3dc33 [php] Update h2o platform to PHP 8.2 (#7940) 2 anni fa
..
deploy fbc82de9b2 [php] Update php-unit to v1.29 (#7839) 2 anni fa
eloquent e432178aac Update to PHP 8 (#6169) 4 anni fa
models c791a06013 name php properly 11 anni fa
README.md d454e5062b Update php unit to Ubuntu 20.04 (#5713) 5 anni fa
apc.php c791a06013 name php properly 11 anni fa
benchmark_config.json 826b8e67c8 [php] With Workerman without worker mode (#7798) 2 anni fa
config.toml 0096f84ee9 Config for the new toolset (#6259) 4 anni fa
dbquery.php e432178aac Update to PHP 8 (#6169) 4 anni fa
dbraw.php e225534dfe Correct small typo in header (#5092) 6 anni fa
fortune.php 96a0c5429e PHP PDO use prepared statements in db server (#4862) 6 anni fa
info.php 6674dd637c Update and reconfigure PHP stack (#3291) 7 anni fa
json.php e225534dfe Correct small typo in header (#5092) 6 anni fa
php-caddy.dockerfile dd3c92144e [php] Add Caddy server (#7689) 2 anni fa
php-eloquent.dockerfile 579a03bbc5 [php] Update to ubuntu 22.04 (#7690) 2 anni fa
php-franken.dockerfile 70ab970735 [php] Add Frankenphp platform (#7748) 2 anni fa
php-h2o.dockerfile 8684e3dc33 [php] Update h2o platform to PHP 8.2 (#7940) 2 anni fa
php-laravel-query-builder.dockerfile 579a03bbc5 [php] Update to ubuntu 22.04 (#7690) 2 anni fa
php-pgsql-raw.dockerfile 579a03bbc5 [php] Update to ubuntu 22.04 (#7690) 2 anni fa
php-pools.dockerfile 579a03bbc5 [php] Update to ubuntu 22.04 (#7690) 2 anni fa
php-raw7-tcp.dockerfile 579a03bbc5 [php] Update to ubuntu 22.04 (#7690) 2 anni fa
php-unit.dockerfile fbc82de9b2 [php] Update php-unit to v1.29 (#7839) 2 anni fa
php-workerman.dockerfile 826b8e67c8 [php] With Workerman without worker mode (#7798) 2 anni fa
php.dockerfile 579a03bbc5 [php] Update to ubuntu 22.04 (#7690) 2 anni fa
plaintext.php e225534dfe Correct small typo in header (#5092) 6 anni fa
updateraw.php e432178aac Update to PHP 8 (#6169) 4 anni fa

README.md

PHP Benchmarking Test

This is the PHP portion of a benchmarking test suite comparing a variety of web development platforms.

Important

When editing this framework, be sure to force add the files changed. Most files were added to .gitignore, as the framework touches some of them during testing.

Infrastructure Software Versions

The tests were run with PHP Version 7.3.* + OPcache

Platforms

Webservers

Databases

ActiveRecord

Eloquent ORM / Laravel Query Builder

The Laravel query builder / eloquent ORM components can be run separately from the Laravel framework. (Instructions) This is used for two tests:

  • php-laravel-query-builder: uses the Laravel query builder without using the full Eloquent ORM.
    This tests the overhead of the dependency injection container (Capsule) and the query builder without the overhead of the Eloquent ORM models.
  • php-eloquent: uses the Laravel Eloquent ORM which is built on top of the Laravel query builder. This tests the incremental overhead of the Eloquent ORM models.

These tests measure overhead compared to a PHP-PDO implementation. Comparing these tests to the Laravel framework results also illustrates the overhead of the Laravel frontend components relative to the backend components.

Brion Finlay

Test URLs

JSON Encoding Test

http://localhost/json.php

Data-Store/Database Mapping Test

Raw: http://localhost/dbraw.php

ORM: http://localhost/dborm.php

Variable Query Test

Raw: http://localhost/dbraw.php?queries=5

ORM: http://localhost/dborm.php?queries=5

Eloquent ORM / Laravel Query Builder tests

Eloquent ORM