Was könnte dazu führen, dass die Leistung eines LAMP-Servers schlechter ist als die meines Laptops?

Was könnte dazu führen, dass die Leistung eines LAMP-Servers schlechter ist als die meines Laptops?

Ich betreibe eine Webanwendung (PHP + MariaDB) für mein Unternehmen, entwickle sie auf meinem Laptop und führe die Produktionsversion auf einem dedizierten Server aus.

Vor Kurzem habe ich begonnen, die Leistung zu messen und festgestellt, dass mein Laptop eine bessere Leistung bringt als der Server. Beispielsweise wird eine der Seiten auf meinem Laptop in ca. 50 ms generiert, auf dem Server dagegen in ca. 130 ms. Diese Zeit wird im PHP-Code mit microtime() gemessen, sodass Verzögerungen bei Netzwerkanforderungen an den Server ignoriert werden.

Die Sache ist, dass der Server in jedem einzelnen Punkt eine bessere Leistung erbringen sollte als mein Laptop. 130 ms sind für diese Anwendung in Ordnung, daher ist mir das noch nie aufgefallen. Aber wenn möglich, würde ich gerne verstehen, was die Ursache dafür ist.

Ich schätze, der nächste Schritt wäre, die Zeit an verschiedenen Punkten des Codes zu messen, aber der Unterschied ist so wichtig (> x2,5), dass ich den Eindruck habe, ich übersehe etwas.

Hier sind einige Einzelheiten.

CPU

  • Laptop: Intel(R) Core(TM) i5-5200U CPU @ 2,20 GHz
  • Server: Intel(R) Xeon(R) CPU E3-1270 v6 @ 3,80 GHz

RAM

  • Laptop: 16 GB DDR3 bei 1600 MHz
  • Server: 32 GB DDR4 bei 2400 MHz

Betriebssystem

Auf beiden läuft Debian 9, also dieselbe Version von Apache2, PHP, MariaDB usw., und sie sollten mehr oder weniger auf dieselbe Weise konfiguriert sein.

MariaDB

Auf dem Server ist es so konfiguriert, dass 24 GB RAM für die InnoDB-Poolgröße verwendet werden, aufgeteilt auf 12 Instanzen (alle Tabellen verwenden InnoDB). Derzeit werden nur 4,5 GB RAM verwendet, sodass Festplattenzugriffe kein Problem darstellen sollten.

Was sonst?

  • Die Swap-Nutzung ist null
  • Die CPU ist die meiste Zeit im Leerlauf
  • Insbesondere wurden die Messungen zu Zeitpunkten durchgeführt, in denen niemand sonst die Anwendung nutzte
  • Auf dem Server laufen andere Dienste (z. B. Git oder andere Webanwendungen), die keinen derartigen Einfluss auf die Leistung haben sollten, insbesondere angesichts der geringen CPU-Auslastung.

verwandte Informationen