Frage

Nehmen wir ein Java EE-basierte E-Commerce-Website ist eine gute Leistung erwartet, Reaktionszeit und Durchsatz zu geben. Die Website wird große ui Änderungen unterworfen und es wird zu bringen 3-mal mehr Verkehr erwartet.

Wie finde ich heraus, ob der geplante Web-Traffic durch die bestehende Umgebung gehandhabt werden könnte?

Gibt es eine Möglichkeit, es herauszufinden einige empirische Formel, ohne das System zu testen tatsächlich laden, wenn ich die Systemauslastung (CPU, Speicherauslastung) haben, Durchsatz, Antwortzeit des bestehenden Systems. (Das Ziel ist, zu bestimmen, ob die SLAs in der Entwurfsphase erfüllt werden können selbst)

War es hilfreich?

Lösung

Nein, es gibt keine Formel dafür gibt es einfach zu viele Faktoren wechselseitigen Abhängigkeiten dafür. Die einzige Möglichkeit, realistische Zahlen zu bekommen, ist durch empirische Tests. Wenn Sie dies nicht tun können, Sie sind nur die Möglichkeit für Überkapazitäten in der Hardware gehen und eine fundierte Vermutung tun, dass so etwas wie dies gehen würde:

  • Ist die neue UI Auswirkungen CPU-Auslastung?
  • Ist es länger dauern zu machen und eine Seite zu übertragen? Schätzen Sie die Erhöhung der Gleichzeitigkeit.
  • Ist auch mehr Verkehr mehr Daten bedeuten? Wenn ja, wie wirkt sich dies auf die Leistung?
  • Gibt es Engpässe, die zu einem unerwarteten Anstieg der Gleichzeitigkeit führen könnten?
  • Wie funktioniert die erhöhte Parallelität Auswirkungen Speichernutzung?
  • Wie funktioniert die Speichernutzung Auswirkungen Dateisystem-Cache, Datenbank-Cache, JPA-Cache, etc.
  • Ist Leistung IO gebunden? Und wie viel freie Kapazität zur Verfügung steht?
  • Ist Performance CPU gebunden? Und wie viel freie Kapazität zur Verfügung steht?
  • Wie viel freie Kapazität im Speicher haben Sie?

Andere Tipps

Ich bin nicht einverstanden teilweise mit der vorherige Antwort. Sicherlich beinhaltet jede Kapazitätsplanung, die Erstellung eines Modells mit einer Reihe von (potentiell gefährlich) Annahmen.

Nichtsdestotrotz, mit einer guten historischen Perspektive:

  • Transaktionslast (zum Beispiel Web-Zugriffe auf Apache-Logs)

  • CPU- und Speichernutzung

Last-Leistungsanalysen können den „Demand Service“, um zu bestimmen gebaut werden (in etwa die Menge der eingesetzten Ressourcen sprechen eine einzige Anfrage bearbeiten) durch analytische statistische Techniken. Der gleiche Parameter können dann in Warteschlangennetzmodellen zugeführt werden erwartete Antwortzeit und den Durchsatz zu schätzen (deren Verhalten kann auf einem hohen Niveau von Ressourcensättigung stark nichtlinear sein).

Trotz allem, was gerade gesagt hat:   - es ist keine einfache Formel

  • Sie müssen davon ausgehen, dass die Wirkung des neuen UI ist 3X Lasterzeugung und sonst nichts (die gleiche Service-Nachfrage für eine Anforderung, die gleiche Effizienz)

  • Sie nehmen das Risiko von Problemen mit den nicht-modellierten möglichen Engpaß (zB gesättigten Verbindungspools, Netzwerkbandbreite, ...), die ein generelles Problem der Kapazitätsplanung ist.

testet die einzige sichere Möglichkeit, leider zu oft eine Option, die nicht verfügbar ist.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top