Ich würde mit dem Lesen eines Wikipedia-Artikels zu diesem Thema beginnen.
Kurz gesagt, Skalierbarkeit ist die Art und Weise, wie die Systemleistung mit dem Hinzufügen weiterer Ressourcen oder die Ressourcennutzung mit zunehmender Auslastung zunimmt . Wie viele gleichzeitige Benutzer kann Ihre Site beispielsweise verarbeiten, bis die Antwortzeit mehr als 0,3 Sekunden beträgt? Dieselbe Frage, nachdem Sie den verfügbaren RAM / Datenträger / CPU / etc verdoppelt haben. Sie können wahrscheinlich Ihr Wissen über die Interna der Anwendung nutzen, um zu entscheiden, welche Parameter überprüft werden sollten.
Richten Sie einen Prüfstand mit einem Server-Computer und einem oder mehreren Client-Computern ein. Verwenden Sie ein Tool, um die dem Server zur Verfügung stehende Ressourcenmenge zu begrenzen (z. B. ulimit
), oder führen Sie eine störende Anwendung auf dem Server aus. Messen Sie, wie der Server mit Clientanforderungen umgeht. Wiederholen Sie die obigen Schritte, um die störende Last bzw. die verfügbaren Ressourcen schrittweise zu erhöhen / zu verringern. Am Ende erhalten Sie einen n-dimensionalen Raum mit Punkten. Es kann einfacher sein , nur einen Parameter zu einem Zeitpunkt , zu ändern , während alle anderen in einiger typischer Wert Fixierung (oder ein paar Werte). In diesem Fall können Sie das Ergebnis darstellen , wie eine Reihe von 2D mit Serverleistung Graphen (zB Anzahl der Nutzer / Anfragen) auf einer Achse und Ressourcennutzung / Verfügbarkeit auf der anderen Seite .
Es gibt komplexere Szenarien, in denen Ihre Anwendung mehr Server für mehr Teil der Anwendung verwendet, und Sie ihre Menge und das Verhältnis variieren können, aber ich denke, es ist nicht Ihr Fall ist. Allenfalls können Sie wahrscheinlich die Anzahl der Threads / Prozesse zu verändern, wenn diese Angelegenheiten.
Wenn Sie die gesamte Anwendung messen, benötigen Sie normalerweise keinen Quellcode-Zugriff. Es kann jedoch interessant sein, einen bestimmten Teil des Codes zu messen (z. B. nur DB oder UI). Dann können Sie den Quellcode verwenden nur dieses Modul für Messungen zu entlarven und die Tests ausgeführt werden . Dies wird als Mikrobenchmark bezeichnet .
Wenn Sie Beispiele suchen, gibt es eine Fülle von ihnen in wissenschaftlichen Artikeln. Durchsuchen Sie den Google Scholar nach Leistungsbewertungen und Ihren bevorzugten Begriffen.