Joan Miquel 3ca4a6f6db Delete php5 as reached EOL (#4986) 6 gadi atpakaļ
..
deploy 3ca4a6f6db Delete php5 as reached EOL (#4986) 6 gadi atpakaļ
eloquent a9f52c3293 Update Eloquent ORM to return objects (#4648) 6 gadi atpakaļ
models c791a06013 name php properly 11 gadi atpakaļ
README.md 00a84a0559 [ci skip] Update php/php readme (#4960) 6 gadi atpakaļ
apc.php c791a06013 name php properly 11 gadi atpakaļ
benchmark_config.json 3ca4a6f6db Delete php5 as reached EOL (#4986) 6 gadi atpakaļ
dborm.php d415bb2a9a Simplify php activerecords (#4606) 6 gadi atpakaļ
dbquery.php 96a0c5429e PHP PDO use prepared statements in db server (#4862) 6 gadi atpakaļ
dbraw.php 96a0c5429e PHP PDO use prepared statements in db server (#4862) 6 gadi atpakaļ
fortune.php 96a0c5429e PHP PDO use prepared statements in db server (#4862) 6 gadi atpakaļ
info.php 6674dd637c Update and reconfigure PHP stack (#3291) 7 gadi atpakaļ
json.php 96a0c5429e PHP PDO use prepared statements in db server (#4862) 6 gadi atpakaļ
php-activerecord.dockerfile 60535c5cc2 Update php to Ubuntu 19.04 and nginx 1.15.9 (#4786) 6 gadi atpakaļ
php-eloquent.dockerfile 60535c5cc2 Update php to Ubuntu 19.04 and nginx 1.15.9 (#4786) 6 gadi atpakaļ
php-h2o.dockerfile 05a83fee70 H2O: Make the start-servers.sh script reusable (#4875) 6 gadi atpakaļ
php-laravel-query-builder.dockerfile 60535c5cc2 Update php to Ubuntu 19.04 and nginx 1.15.9 (#4786) 6 gadi atpakaļ
php-ngx.dockerfile f7941b5263 Php-ngx update (#4844) 6 gadi atpakaļ
php-pgsql-raw.dockerfile 60535c5cc2 Update php to Ubuntu 19.04 and nginx 1.15.9 (#4786) 6 gadi atpakaļ
php-pools.dockerfile 60535c5cc2 Update php to Ubuntu 19.04 and nginx 1.15.9 (#4786) 6 gadi atpakaļ
php-raw7-tcp.dockerfile 60535c5cc2 Update php to Ubuntu 19.04 and nginx 1.15.9 (#4786) 6 gadi atpakaļ
php-unit.dockerfile 3ca4a6f6db Delete php5 as reached EOL (#4986) 6 gadi atpakaļ
php.dockerfile 60535c5cc2 Update php to Ubuntu 19.04 and nginx 1.15.9 (#4786) 6 gadi atpakaļ
plaintext.php 46394ea86a Faster PHP plaintext (#4959) 6 gadi atpakaļ
updateraw.php 96a0c5429e PHP PDO use prepared statements in db server (#4862) 6 gadi atpakaļ

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