Go ve PHP: çekirdek başına kapasite
Aynı OAuth2 servisinde Go, FrankenPHP ve PHP-FPM: çekirdek başına istek, istek başına CPU, PostgreSQL yükü ve instance sayısı.
OAuth2 servisi · orta güven
Çekirdek başına istek/sn
- 14.330GoGo 1.27.1
- 6.415FrankenPHP1.12.7, worker modu
- 5.152PHP-FPMPHP 8.5.10
Dört çekirdekte
Go, PHP-FPM'in 2,78 katı iş çıkarıyor.
FrankenPHP'nin 2,23 katı. Ölçüm orta güvenle yayımlandı; sayı bir doyum tavanıdır, SLO değildir.
Tavan
Dört çekirdekte istek/sn
istek/sn
- Go57.321
- FrankenPHP25.659
- PHP-FPM20.606
Tavan
Çekirdek sayısına göre istek/sn
| Çekirdek | Go | FrankenPHP | PHP-FPM |
|---|---|---|---|
| 1 | 16.883 | 6.544 | 6.218 |
| 2 | 29.449 | 14.306 | 11.211 |
| 4 | 57.321 | 25.659 | 20.606 |
Verim
Dört çekirdekte istek başına CPU
µs
- Go66,77
- FrankenPHP110,74
- PHP-FPM187,74
Verim
FrankenPHP çekirdeği doldurmuyor
- 0,541 çekirdekte kullanılanGo ve PHP-FPM 0,98
- 1,442 çekirdekte kullanılanGo 1,87, PHP-FPM 1,95
- 2,844 çekirdekte kullanılanGo 3,83, PHP-FPM 3,87
Tavanda
Gecikme ve bellek
| Aday | p50 okuma / yazma | p99 okuma / yazma | RSS |
|---|---|---|---|
| Go | 1,81 / 2,42 ms | 4,69 / 5,41 ms | 30,4 MiB |
| FrankenPHP | 4,77 / 4,96 ms | 8,80 / 9,06 ms | 60,3 MiB |
| PHP-FPM | 6,03 / 6,24 ms | 8,27 / 8,45 ms | 60,0 MiB |
Veritabanı
PostgreSQL'in payı
| Doyan aday | Yazma + okuma | PostgreSQL çekirdeği | İstek başına CPU |
|---|---|---|---|
| Go | 24.930 + 32.392 | 2,34 | 40,75 µs |
| FrankenPHP | 12.575 + 13.084 | 1,11 | 43,2 µs |
| PHP-FPM | 10.128 + 10.478 | 1,46 | 71,07 µs |
Kapasite
30.000 istek/sn için gereken çekirdek
- 2,0Go
- 3,3FrankenPHP
- 5,6PHP-FPM
Kapasite
Hedef hıza göre instance sayısı
| Hedef istek/sn | Go | FrankenPHP | PHP-FPM |
|---|---|---|---|
| 10.000 | 1 | 1 | 1 |
| 20.000 | 1 | 1 | 1 |
| 30.000 | 1 | 2 | 2 |
| 50.000 | 1 | 2 | 3 |
| 100.000 | 2 | 4 | 5 |
Ayar
Havuz boyutu ve yanlış seçimin bedeli
| Aday | En iyi havuz (1/2/4 çekirdek) | En kötü seçimin bedeli |
|---|---|---|
| Go | 16 / 64 / 64 | %70,6 |
| PHP-FPM | 8 / 16 / 32 | %30,7 |
| FrankenPHP | 8 / 8 / 8 | %29,6 |
Okurken
Bu sayıların sınırları
- TavanYayınlanan sayı doyum tavanıdır, SLO değildir. 45 tekrarın 45'i üreteç yoklamasından geçti.
- OrtamBir koşuda ana makinedeki headless Chromium Go'yu 57.321 yerine 17.490 istek/sn'ye düşürdü; o koşu atıldı.
- DiskVM diskinin fsync garantisi doğrulanmadı; mutlak yazma rakamları iyimser olabilir, karşılaştırma etkilenmez.