ein seltsames Phänomen
ich habe da so einen PHP Codeschnipsel:
$result = magischedatenbankabfrage(); //100 rows
$output = '';
echo time() . ' start';
foreach($result as $row){
$output .= 'a' . $row['a'] . 'b' . $row['b'] . 'c' . $row['c'] . 'd' . $row['d']... // insgesamt 16 Verkettungen von strings und variablen
}
echo time() . ' end';
so weit so gut. jetzt das phänomen: das ganze ist auf Host A ca. 6x schneller als auf Host B und C. warum?
Host A
- XEN VM
- Xeon E3-1271 v3 @ 3.60GHz
- 4 GB RAM
- 2 vCPUs
- Ubuntu 14.04.3 (3.13.0-70)
- PHP 5.5.9
Host B
- XEN VM
- Xeon E3-1275 v5 @ 3.60GHz
- 4 GB RAM
- 2 vCPUs
- Ubuntu 14.04.3 (3.13.0-79)
- PHP 5.5.9
Host C
- Nativ
- Xeon E5-2690 v3 @ 2.60GHz
- 128 GB RAM
- Ubuntu 14.04.4 (3.13.0-85)
- PHP 5.5.9 (und testweise PHP 7.0.5)
Dinge, die wir ausprobiert haben:
- in ein file schreiben.
- statt
foreach
einefor
-Schleife verwenden. printf()
- php module vergleichen (sind identisch)
php.ini
vergleichen (ist identisch)