next up previous contents
Next: Client Up: Generische Management-Objektklassen für verteilte Previous: Generische Management-Objektklassen für verteilte

Server

Ein Server stellt seine Dienste an einer oder mehreren Schnittstellen zur Verfügung. Generische Attribute, die für jede Art von Servern gelten, werden in der Klasse Server zusammengefaßt. Die meisten Attribute sind Zähler, deren Werte sehr wichtige Daten über die Performance und die Qualität der Dienste bereitstellen. Sämtliche Zähler berechnen Werte über ein bestimmtes festgelegtes Zeitintervall. Der Anfangszeitpunkt der Messung ist entweder der Startzeitpunkt der Server-Instanz oder der Zeitpunkt, an dem die Zähler zuletzt zurückgesetzt wurden. Der aktuelle Abfragezeitpunkt bedeutet das Ende des Meßintervalls.

Das Attribut Request zeigt die Gesamtanzahl der in einem Intervall beim Server angekommenen Aufträge an. Reject gibt die Anzahl der Aufträge an, die der Server in dem Zeitintervall wegen Mangel an Ressourcen nicht bearbeiten konnte, während Accept die Aufträge mitzählt, die der Server empfangen und akzeptiert hat. Es gilt Accept = Request - Reject. Akzeptierte Aufträge können vom Server später auch noch verworfen werden, falls der Client z.B. keine Berechtigung hat, an den Server Aufträge zu verschicken. Ein anderes Attribut NotAuthorized kann die Anzahl dieser Aufträge mitzählen, die der Server aufgrund mangelnder Berechtigung von Clients verworfen hat.


  
Abbildung: Systemspezifische Objektklassen

Das Attribut Depart zählt die Anzahl der akzeptierten Aufträge, die der Server im festgelegten Zeitintervall schon bearbeitet hat, dessen Bearbeitung also schon beendet ist, unabhängig von dem Ergebnis der Bearbeitung. In Depart sind also auch die Aufträge enthalten, die der Server aufgrund von Prüfungen später verwirft. Die Anzahl der in dem festgelegten Intervall nicht bearbeiteten Aufträge wird in dem Attribut Utilization festgehalten. Der Wert errechnet sich folgendermaßen: Utilization = Accept - Depart. D.h. daß der Wert Utilization die Anzahl der zum Zeitpunkt der Abfrage noch nicht bearbeiteten Aufträge anzeigt. Um diesen Wert nicht durch inkorrekte Werte von Accept und Depart zu verfälschen, die aufgrund von unterschiedlichen Abfragezeitpunkten der beiden Werte entstehen können, wird er vom Server zum gleichen Zeitpunkt errechnet und bereitgestellt.

Ein weiteres Attribut Delay gibt Aufschluß über die Bearbeitungszeit des letzten im Intervall beendeten Auftrags. Dieser Wert könnte für Performancetests in bestimmten Intervallen abgelesen und mit früheren oder mit Durchschnittswerten verglichen werden, um einen Vergleich über die aktuelle Auslastung des Servers zu erhalten.

Zwei weitere wichtige Attribute sind Bad und Error, die unterschiedliche Arten von Fehlern mitzählen. Bad gibt die Art von Fehlaufträgen an, die der Server als fehlerhaft erkennt und deswegen nicht mehr bearbeitet. Dagegen zählt Error die Aufträge, die der Server aufgrund von eigenem Verschulden (interner Serverfehler usw.) nicht bearbeiten konnte. Die Methoden start() und stop() erlauben das ordnungsgemäße Starten und Stoppen des Servers.

Weiter sind für die Klasse Server noch die Attribute wichtig, die sie von den Oberklassen object und compObject erbt. Das Attribut ID, das Server von der Klasse object erbt, ist für jedes Objekt gleich und stellt den eindeutigen Identifikator des Objektes dar. Das Attribut Uptime aus der Klasse compObject legt für jedes Computational Object den Startzeitpunkt der Instanz bzw. der Software-Komponente fest, im diesem Fall also den Startzeitpunkt des Servers. Das Attribut UsageState zeigt die aktuelle Nutzung der Server-Dienste an und ist nur lesbar, kann also nicht verändert werden. Es kann folgende Werte annehmen:

Das Attribut OperationalState gibt Aufschluß über die Betriebsbereitschaft des Servers und kann folgende Werte annehmen, die auch nur lesbar sind:

Der Administrationszustand des Servers kann über das Attribut AdminState abgefragt, also ausgelesen und über die Methoden lock() und unlock() verändert werden. Das Attribut kann folgende Werte annehmen:


next up previous contents
Next: Client Up: Generische Management-Objektklassen für verteilte Previous: Generische Management-Objektklassen für verteilte
Copyright Munich Network Management Team