⚠ This page is served via a proxy. Original site: https://github.com
This service does not collect credentials or authentication data.
Skip to content

thienhv-dev/php-benchmark

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Dự án Benchmark PHP

Dự án này cung cấp môi trường benchmark cho ứng dụng PHP sử dụng Docker. Bạn có thể dễ dàng kiểm tra hiệu năng các endpoint của ứng dụng PHP qua các kịch bản tự động.

Cấu trúc thư mục

php-benchmark/
├── docker-compose.yml         
├── Dockerfile                 
├── app/                       
│   ├── index.php              # Router chính
│   ├── api.php                # Các endpoint API
│   └── config.php             # Cấu hình PHP
├── benchmark/
│   └── run-test.sh            # Script tự động benchmark
├── results/                   # Kết quả benchmark (tự sinh ra)
└── README.md

Hướng dẫn cài đặt & sử dụng

Yêu cầu

Các bước khởi động môi trường

  1. Clone source về máy:
    git clone <your-repo-url>
    cd php-benchmark
  2. Build và chạy các container:
    docker-compose up --build -d
    Lệnh này sẽ build image và khởi động 2 service: php-app (chạy app PHP) và benchmark (chạy script benchmark).
  3. Truy cập ứng dụng PHP:
  4. Chạy benchmark:
    • Thực thi script benchmark trong container:
      docker exec php-benchmark-tools bash /benchmark/run-test.sh
    • Kết quả sẽ lưu ở thư mục results/

Tuỳ biến

  • Sửa code trong thư mục app/ nếu muốn thay đổi logic ứng dụng PHP.
  • Sửa hoặc thêm script trong benchmark/ nếu muốn thay đổi cách benchmark.

Kết quả benchmark

  • Kết quả sẽ được lưu ở thư mục results/ dưới dạng file .csv, .html, .txt, .dat.

Hướng dẫn nhanh: Khởi động & chạy benchmark

# Build và start containers
docker-compose up -d

# Chờ các service khởi động (30-60 giây)
sleep 30

# Kiểm tra health endpoint
curl http://localhost:8080/health

# Chạy benchmark
docker exec php-benchmark-tools bash /benchmark/run-test.sh

# Xem kết quả
ls results/
cat results/summary_*.csv

Giải thích kết quả benchmark

Các chỉ số chính:

  • RPS: Số request xử lý mỗi giây (Requests per second)
  • Mean Time: Thời gian phản hồi trung bình (ms)
  • Failed: Số lượng request thất bại

Expected Performance:

  • Fast endpoint: 500-1000 RPS
  • Medium endpoint: 50-200 RPS
  • Slow endpoint: 5-20 RPS

Một số lệnh test mẫu

# Test nhanh 1 endpoint
docker exec php-benchmark-tools ab -n 1000 -c 50 http://php-app/api/fast

# Test custom
docker exec php-benchmark-tools ab -n 5000 -c 100 -t 60 http://php-app/api/medium

Dừng môi trường

Để dừng và xóa container, chạy:

docker-compose down

Xử lý sự cố

  • Đảm bảo port 8080 chưa bị chiếm dụng.
  • Xem log container bằng lệnh: docker-compose logs

About

php-benchmark

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published