Проект для сравнения производительности PHP на разных железках и операционках.
Текущие кейсы:
- Генерация JSON (Hello World)
- Чтение/запись файла
- Чтение/запись в PostgreSQL
- Нагрузку по памяти
Используются Docker, Composer, Make, .env и простейший DI-контейнер.
- Docker + Docker Compose
- GNU Make
- Клонировать репозиторий:
git clone https://github.com/bemyslavedarlin/benchphp.git
cd benchphp- Заполнить настройки:
cp .env.example .env- Собрать проект:
make
# or
make build
make up
make composer-instal make benchmark HelloWorldBenchmark
docker-compose exec -T php php /app/bin/benchmark.php HelloWorldBenchmark --iterations=10
# or for all
make benchmarks- Реализация от интерфейса
interface BenchmarkInterface {
public function handle(array $options = []): array;
}- ПР в репозиторий