redbots-blog-performancemessung

Performancemessungen und Caching

Im Gespräch mit einem Kunden stellte sich heraus, dass der grundsätzliche Einfluss des Browser-Caches zwar bekannt ist, der Teufel aber im Detail steckt. In der Initialphase des Projekts lautete die Zielsetzung: "Messt die Performance möglichst kundennah." D.h. wir haben das Projekt so aufgesetzt, dass JMeter wie ein Browser agiert. Dazu gehört einerseits die Verwendung des Http Cache Managers im JMeter und andererseits die Kontrolle, dass im Http-Header nicht das Caching ausgeschaltet wird. Während der Einsatz des Http Cache Managers im JMeter einfach ist und das erwartete Verhalten zeigt (Achtung: "Use Cache-Control" unbedingt aktivieren), zeigte sich eine Fehlkonfiguration des Zielsystems: Alle Objekte wurden mit "No-Cache"-Flag ausgeliefert.

Aus der eigentlich kleinen Anforderung, den Test möglichst ähnlich zum realen Nutzerverhalten durchzuführen, wurde so eine lange Diskussion über die tatsächliche Konfiguration der Webserver. Dass die Webserver auch noch mit http/1.0 arbeiten und dennoch https verwendet wird (aus Performancesicht ein absolutes No-Go) kam bei unserer Untersuchung auch noch zu Tage. Ein einfaches Umstellen der Konfiguration ergibt 30% Einsparung bei der Anzahl der Webserver.

Bild: Alex Knight, Unsplash