Vor Kurzem musste ich den Server erneut einem Stresstest unterziehen. Hier fasse ich die Schätzschemata und Schätzmethoden zusammen, die ich vor Kurzem gelernt habe. Die folgende Schätzmethode berücksichtigt keine Extremsituationen wie beispielsweise Blitzverkäufe. Schätzung des Parallelitätswerts1.1 Klassische FormelIm Allgemeinen wird die folgende empirische Formel verwendet, um die durchschnittliche Anzahl gleichzeitiger Benutzer und Spitzendaten des Systems zu schätzen:
C ist die durchschnittliche Anzahl gleichzeitiger Benutzer, n ist die Anzahl der Anmeldesitzungen, L ist die durchschnittliche Länge einer Anmeldesitzung und T ist die zu beobachtende Zeitspanne. C‘ ist die maximale Anzahl gleichzeitiger Benutzer Wenn wir diese Formel verwenden, um die ungefähre Anzahl gleichzeitiger Benutzer einer Essensbestellungs-App mit 1 Million gleichzeitigen Benutzern zu berechnen, erhalten wir Folgendes: Angenommen, eine App für Essenslieferungen hat 1 Million Benutzer und 12,5 % davon sind täglich aktive Benutzer, also 125.000 täglich aktive Benutzer. Die durchschnittliche Zeit vom Öffnen der App bis zur Essensbestellung beträgt für jeden täglich aktiven Benutzer etwa 5 Minuten. Nehmen wir an, dass die App von 8 bis 12 Uhr von Benutzern genutzt wird. Dann kann ein Wert berechnet werden: Durchschnittliche Anzahl gleichzeitiger Benutzer C = 125000*5/16*60 = 651 Maximale Anzahl gleichzeitiger Benutzer C`=651+3*root 651=726 Die oben angegebene Anzahl gleichzeitiger Benutzer wurde mit der klassischen Formel berechnet. Sie kann jedoch von der tatsächlichen Situation abweichen. Was Essensliefer-Apps betrifft, bestellen die meisten Leute ihr Essen während der Stoßzeiten, daher sollte diese Art von Essensliefer-App gesondert betrachtet werden. Wir verwenden das 2/8-Prinzip, um die Anzahl gleichzeitiger Benutzer zu schätzen. Das heißt, 80 % der Benutzer bestellen während der Spitzenzeit Essen. Die Spitzenzeit ist auf 11-12 und 17-19 Uhr festgelegt, also insgesamt 5 Stunden. In diesem Fall wird die Anzahl gleichzeitiger Benutzer wie folgt geschätzt: Durchschnittliche Anzahl gleichzeitiger Benutzer C = 125000 * 5 * 0,8 / 5 * 60 = 1666 Maximale Anzahl gleichzeitiger Benutzer C`=1666+3*Quadratwurzel von 1666=1788 1.2 Allgemeine FormelFür die meisten Szenarien können Sie zur Schätzung der Parallelität (Gesamtzahl der Benutzer/statistische Zeit) * Impact Factor (normalerweise 3) verwenden. Nehmen wir als Beispiel die U-Bahn: Jeden Tag gibt es 50.000 Passagiere. Die morgendliche Spitzenlast ist jeden Tag von 7 bis 9 Uhr und die abendliche Spitzenlast ist von 6 bis 7 Uhr. Nach dem 8/2-Prinzip fahren 80 % der Passagiere während der Spitzenlast mit der U-Bahn. Die Anzahl der Personen, die pro Sekunde am U-Bahn-Ticketschalter ankommen, beträgt 5000080 %/(36060) = 3,7, also etwa 4 Personen/Sekunde. Unter Berücksichtigung von Faktoren wie Sicherheitskontrollen und Eingangsschließungen muss die tatsächliche Anzahl der Personen, die sich am Ticketschalter ansammeln, größer sein. Unter der Annahme, dass jede Person 3 Sekunden braucht, um die Station zu betreten, sollte die tatsächliche Gleichzeitigkeit 4 Personen/Sekunde3Sekunde = 12 betragen. Natürlich kann der Einflussfaktor je nach tatsächlichen Bedingungen erhöht werden! Daher können IoT-Geräte tatsächlich als Allzweckgeräte betrachtet werden. In einem extremeren Fall sind 95 % der 1 Million Geräte täglich aktive Geräte, also 950.000. Und unter der Annahme, dass 80 % dieser Geräte innerhalb von 3 Stunden (Spitzenzeit) auf den Server zugreifen, lässt sich die Anzahl der gleichzeitig aktiven Geräte schätzen. 950000*0,8/(3*60*60)=70/s Aufgrund der hohen Unsicherheit bei IoT-Geräten setzen wir den Impact Factor auf 5 .70*5=350 bedeutet, dass die Anzahl der aktiven Geräte 350 pro Sekunde beträgt. Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird. Das könnte Sie auch interessieren:
|
<<: CSS-Animation kombiniert mit SVG zur Erzeugung eines Energieflusseffekts
>>: Beispielcode zur Implementierung des Verlaufs-Tag-Menüs mit vue+elementui+vuex+sessionStorage
Inhaltsverzeichnis 1. Frontend-Steuerung 1. In de...
Jeden Tag ein jQuery-Plugin - Schritt-Fortschritt...
In diesem Artikel wird der spezifische JavaScript...
Inhaltsverzeichnis Was ist ein Agent Grundkenntni...
Docker fragt Bilder in einem privaten Register ab...
Was ist ORM? ORM steht für Object Relational Mapp...
In diesem Artikel wird der spezifische Code von j...
1. Einführung in mysqldump mysqldump ist ein logi...
In diesem Artikel wird der spezifische Code von J...
1. Problem Mehrere schwebende Elemente können die...
Frage. Im mobilen Shopping-Mall-System sehen wir ...
wie Für LIKE ist eine Übereinstimmung der gesamte...
Inhaltsverzeichnis 1. Vererbung der Prototypkette...
In diesem Artikelbeispiel wird der spezifische Co...
Im Vergleich zum alten Lebenszyklus Drei Hooks we...