Sun Java Enterprise System 2005Q4 Handbuch zur Bereitstellungsplanung

Festlegen von Strategien hinsichtlich der Skalierbarkeit

Skalierbarkeit ist die Fähigkeit, Ihrem System mehr Kapazität zur Verfügung zu stellen; normalerweise durch das Hinzufügen von Systemressourcen ohne Änderung der Bereitstellungsarchitektur. Bei der Anforderungsanalyse werden üblicherweise Prognosen hinsichtlich des erwarteten Zuwachses eines Systems abgegeben. Als Grundlage dienen hier die Geschäftsanforderungen und die nachfolgende Anwendungsanalyse. Diese Prognosen der Anzahl der Benutzer eines Systems und der Kapazität des Systems zur Erfüllung der jeweiligen Anforderungen sind häufig Einschätzungen, die stark von den tatsächlichen Werten für das bereitgestellte System abweichen. Ihr Konzept sollte so flexibel sein, dass Abweichungen in Ihren Prognosen kein Problem darstellen.

Ein skalierbares Konzept stellt ausreichend latente Kapazität zur Handhabung einer größeren Last bereit, bis ein System mit weiteren Ressourcen aktualisiert werden kann. Skalierbare Konzepte können ohne weiteres so skaliert werden, dass die Handhabung einer größeren Last ohne Neukonzeption des Systems ermöglicht wird.

Latente Kapazität

Die latente Kapazität ist ein Aspekt der Skalierbarkeit, bei dem zusätzliche Leistung und Verfügbarkeitsressourcen für das System bereitgestellt werden können, das daraufhin in der Lage ist, ungewöhnliche Spitzenauslastung zu handhaben. Sie können die Verwendung der latenten Kapazität in einem bereitgestellten System überwachen, um zu ermitteln, wie das System durch das Hinzufügen von Ressourcen skaliert werden kann. Die latente Kapazität stellt eine der Möglichkeiten dar, mit der Sicherheitsaspekte in Ihr Konzept integriert werden können.

Die Analyse von Anwendungsfällen kann bei der Ermittlung von Szenarios hilfreich sein, in denen es zu ungewöhnlicher Spitzenauslastung kommen kann. Nutzen Sie diese Analyse ungewöhnlicher Spitzenauslastung und einen Faktor zur Abdeckung unerwarteten Zuwachses, um latente Kapazität verfügbar zu machen, durch die die Sicherheit Ihres Systems erhöht wird.

Ihr System sollte in der Lage sein, die geplante Kapazität für einen angemessenen Zeitraum zu handhaben, normalerweise für die ersten 6 bis 12 Monate des Betriebs. Wartungszyklen können verwendet werden, um Ressourcen hinzuzufügen oder die Kapazität nach Bedarf zu erhöhen. Im Idealfall sollten Sie in der Lage sein, Aktualisierungen des Systems in regelmäßigen Abständen zu planen, die Vorhersage der erforderlichen Kapazitätserhöhungen erweist sich jedoch in vielen Fällen als schwierig. Verlassen Sie sich bei der Ermittlung des richtigen Zeitpunkts für die Aktualisierung eines Systems auf die genaue Überwachung Ihrer Ressourcen sowie auf Geschäftsprognosen.

Wenn Sie die phasenweise Implementierung Ihrer Lösung beabsichtigen, können Sie die Erhöhung der Kapazität so planen, dass sie mit anderen Verbesserungen für jede Phase zusammenfällt.

Skalierbarkeitsbeispiel

Anhand des Beispiels in diesem Abschnitt wird die horizontale und vertikale Skalierung einer Lösung veranschaulicht, mit der Messaging Server implementiert wird. Für die horizontale Skalierung fügen Sie einem Server für die Handhabung steigender Last zusätzliche CPUs hinzu. Für die vertikale Skalierung wird die steigende Last durch das Hinzufügen weiterer Server gehandhabt, auf die die Last aufgeteilt wird.

Bei diesem Beispiel wird von einem Benutzerstamm mit 50.000 Benutzern ausgegangen, der durch zwei Nachrichtenspeicherinstanzen unterstützt wird, die für den Lastenausgleich aufgeteilt werden. Jeder Server verfügt über zwei CPUs, insgesamt stehen also vier CPUs zur Verfügung. Aus der nachfolgenden Abbildung geht hervor, wie dieses System zur Handhabung der ansteigenden Last für 250.000 Benutzer und 2.000.000 Benutzer skaliert werden kann.


Hinweis –

In der Abbildung Skalierbarkeitsbeispiel wird der Unterschied zwischen vertikaler und horizontaler Skalierung erläutert. Es werden keine zusätzlichen Faktoren veranschaulicht, die bei der Skalierung berücksichtigt werden müssen, beispielsweise Lastenausgleich, Failover sowie Änderungen in Anwendungsmustern.


Abbildung 5–9 Beispiele für horizontale und vertikale Skalierung

Das Architekturdiagramm zeigt die vertikale und horizontale Skalierung im Vergleich mit einer Basisarchitektur.