Skip to content

About

Run benchmarks to evaluate Perpl performance.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

3 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Perpl Benchmark Runner

Run benchmarks to evaluate Perpl performance.

Installation

  • Download repository
  • Configure database user and add schema sakila (user needs CREATE SCHEMA privilege if you want to setup the Sakila database through Perpl)
  • Update DB host, user and password in orms/perpl/config/perpl.json and orms/propel2/config/propel.json to match your settings
  • Run ./bin/setup.sh (or go line by line) to install composer packages and download and install Sakila database
  • Change into runner dir and run the benchmarks via composer run bench-all (see scripts section in composer.json for other options)

Using Perpl Containers

The ORMs are pre-configured to run with the perpl containers. You won't have to set up a database user or edit the config files.

  • Mount perpl-benchmarks folder into container by adding it to docker-compose-php.yml:
    volumes:
      ...
      - /path/to/perpl-benchmarks:/path/to/perpl-benchmarks

Then run and log into container (see perpl containers README).

Use other DBMS

Base setup is for MySql, but Sakila is also available for Postgres and Sqlite.

If you integrate Postgres or Sqlite with current setup, consider creating a PR.

Main project structure

folder content
benchs/<case> PHP scripts for each ORM, i.e. benchs/compare_populate/PopulateModelsPerplBench.php
orms/<ORM> fully configured PHP projects for each tested ORM, i.e. orms/perpl-2.8, orms/doctrine, etc
runner benchmark tool (phpbench) setup

Contribute

Create issues, discuss results, add missing benchmarks or improve setup through PRs, all is welcome!

When in doubt, measure.

About

Run benchmarks to evaluate Perpl performance.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages