Domino 9 und frühere Versionen > ND6: Entwicklung

Performance Messung verschiedener Aufrufe gegen nsf auf Server

<< < (2/2)

harkpabst_meliantrop:

--- Zitat von: Axel_Janssen am 25.07.03 - 15:28:36 ---Nicht ganz sicher, ob ich mich hier richtig ausgedrückt habe.   ;D
Meine Messung misst nicht feingranular jeden einzelnen Aufruf, sondern ich starte die Messung  irgendwo mit:

--- Code: ---de.aja.system.SimplePerfChecker.start();

--- Ende Code ---
und beende die Messung irgendwo mit:

--- Code: ---de.aja.system.SimplePerfChecker.stop();

--- Ende Code ---
Wenn dazwischen der zeitaufwendige remote-call auf die Server-Datenbank stattfindet, dann wäre es doch für die Messung realistisch, wenn dieser Zugriff langsamer stattfinden würde. Oder?
--- Ende Zitat ---
Ich hoffe (immer noch), dass ich das richtig verstanden habe. Also versuche ich nochmal mein Argument anders zu formulieren.

Der Zeitbedarf für den gesamte Remote-Call setzt sich natürlich aus den jeweilige Ausführungszeiten des Codes und der Verzögerung durch das Netzwerk zusammen. Im besten Fall ist diese Verzögerung einfach nur eine konstante Zeit, im schlechtesten Fall eine von Aufruf zu Aufruf durch unterschiedliches Routing und unterschiedliche Auslastung schwankende Zeit.

Den zweiten Fall will man sicher nicht simulieren, weil sich  ohnehin keine reproduzierbaren Ergebnisse gewinnen lassen. Aber auch die erste Möglichkeit bietet meiner Meinung nach keine Vorteile. Du misst und vergleichst die Zeit für verschiedene zusammengesetzte Operationen. Wenn nun zu jeder Zeit einfach eine Verzögerung addiert wird, die lang im Vergleich zur Ausführungszeit des Codes ist, dann wird dadurch doch der relative Zeitunterschied zwischen den Operationen (z.B. als prozentuale Angabe) geringer, bei einer feststehenden Genauigkeit der Zeitmessung also eher ungenauer.

Solange der Zugriff überhaupt über den LoopBack-Adapter erfolgt, also tatsächlich über ein (wenn auch extrem schnelles) Netzwerk und nicht lokal, sehe ich also keine Nachteil.

Das einzige, was man so natürlich tatsächlich nicht beurteilen kann, ist, ob es bei Berücksichtigung der Verzögerungen durch das Netz überhaupt einen merklichen Unterschied macht, ob irgendeine Operation jetzt z.B. doppelt so lange dauert, wie eine andere. Das gebe ich zu.

Axel_Janssen:

--- Zitat von: harkpabst_meliantrop am 25.07.03 - 15:55:09 ---Aber auch die erste Möglichkeit bietet meiner Meinung nach keine Vorteile. Du misst und vergleichst die Zeit für verschiedene zusammengesetzte Operationen. Wenn nun zu jeder Zeit einfach eine Verzögerung addiert wird, die lang im Vergleich zur Ausführungszeit des Codes ist, dann wird dadurch doch der relative Zeitunterschied zwischen den Operationen (z.B. als prozentuale Angabe) geringer, bei einer feststehenden Genauigkeit der Zeitmessung also eher ungenauer.

--- Ende Zitat ---
Ich vergleiche hier nicht 2 unterschiedliche Zugriffsstrategien.
Du meinst sowas in der Art wie:

--- Code: ---Const NETWORK_LATENCY = 5;
(t0 + t1 * NETWORK_LATENCY + t2) / (t3 + t1 * NETWORK_LATENCY + t5)
gibt weniger deutliche Ergebnisse als:
(t0 + t1 + t2) / (t3 + t1  + t5)

--- Ende Code ---
<zwischenfrage>
Heisst sowas netzwerk latenz, oder war das jetzt meine eigene Sprachschöpfung?
</zwischenfrage>

Mir ist jetzt aber klargeworden, was ich eigentlich will:
Die objektive und subjektive* Geschwindigkeit der GUI unter realistischen Bedingungen  testen, wobei das natürlich von einer Menge von Faktoren abhängt, so daß man es schlußendlich eh nur beim Kunden testen kann.

Ich kann den Thread auch für eine festgesetzte Zahl an Milisekunden schlafen legen, der befolgt das dann aber auch nur ungenau, was dann wiederum realistische wiederspiegeln würde.

* mein User-Empfinden

harkpabst_meliantrop:

--- Zitat ---Du meinst sowas in der Art wie:

--- Code: ---Const NETWORK_LATENCY = 5;
(t0 + t1 * NETWORK_LATENCY + t2) / (t3 + t1 * NETWORK_LATENCY + t5)
gibt weniger deutliche Ergebnisse als:
(t0 + t1 + t2) / (t3 + t1  + t5)

--- Ende Code ---

--- Ende Zitat ---

Ganz Genau.


--- Zitat ---<zwischenfrage>
Heisst sowas netzwerk latenz, oder war das jetzt meine eigene Sprachschöpfung?
</zwischenfrage>
--- Ende Zitat ---

Das kann man ruhig so sagen. Schließlich ist Latenz eigentlich nur ein beliebtes Fremdwort für jede Art von Wartezeit. ;D


--- Zitat ---Mir ist jetzt aber klargeworden, was ich eigentlich will:
Die objektive und subjektive* Geschwindigkeit der GUI unter realistischen Bedingungen  testen, wobei das natürlich von einer Menge von Faktoren abhängt, so daß man es schlußendlich eh nur beim Kunden testen kann.
--- Ende Zitat ---


Gut, dass wir drüber gesprochen haben.  ;)

Navigation

[0] Themen-Index

[*] Vorherige Sete

Zur normalen Ansicht wechseln