-
HINTERGRUND DER ERFINDUNG
-
Die
vorliegende Erfindung bezieht sich auf ein Lastausgleichssystem
zum Zuteilen des Zugriffs auf mehrere Server und insbesondere auf
ein Verfahren zum Betrieb einer Lastausgleichseinrichtung.
-
Mit
zunehmender Verbreitung des Internet sind übliche Dienstleistungen einschließlich des
Verkaufs von Eintrittskarten, die bisher an einem Kassenfenster
durchgeführt
wurden, im Internet realisiert worden. Mit der fortschreitenden
Entwicklung der Kommunikationstechnik ist darüber hinaus eine Umgebung geschaffen
worden, in der diese Dienstleistungen nicht nur von zuhause oder
vom Büro
aus akzeptiert werden können,
sondern auch von Mobiltelefonen aus.
-
Ein
Server bei einem Dienstleistungsanbieter (nachstehend als Dienstleistungsserver
bezeichnet) zur Bereitstellung von Dienstleistungen über das Internet,
wie vorstehend beschrieben, muss im Allgemeinen Anfragen von mehreren
Client-Terminals verarbeiten, und daher können derart viele Anfragen nicht
von einem einzelnen solchen Dienstleistungsserver verarbeitet werden.
Aus diesem Grund ist ein System bekannt, das mehrere mit einer Lastausgleichseinrichtung
verbundene Dienstleistungsserver umfasst und in dem Anfragen von
mehreren Client-Terminals auf mehrere Dienstleistungsserver verteilt
werden, um ein Überlaufproblem
zu lösen,
wie es zum Beispiel in der
japanischen
Patent-Offenlegungsschrift 2003-178041 (Absatz 0020) beschrieben
ist.
-
Das
Problem, dass die Dienstleistungsserver in einen Überlastzustand
gebracht werden und sich daher das Antwortverhalten gegenüber dem
Client-Terminal verschlechtert, wie bei dem in der
japanischen Patent-Offenlegungsschrift 2003-178041 (Absatz
0020) beschriebenen bekannten Lastaus gleichssystem, wird durch Überwachen
der CPU-Nutzung, der Speichernutzung usw. der Dienstleistungsserver,
Verringern der Menge von Anfragen, die an einen Dienstleistungsserver
mit einer höheren Last
geleitet werden, Beseitigen der Quelle als die Ursache der Leistungsminderung
(zum Beispiel durch Freigeben des übermäßig genutzten Speichers) usw.
gelöst.
-
US 2002/0042823 A1 beschreibt
ein Lastausgleichssystem zur Verwaltung mehrerer Internet-Server,
das den Internet-Verkehr
durch Weiterleiten von Anfragen für Internet-Seiten an verfügbare Internet-Server
verwalten und die Last aufgrund des Dienstes für die Anforderung von Internet-Seiten
unter den mehreren Servern aufteilen kann. Das System kann außerdem Daten über die
Anfragen für
Internet-Seiten und die Antworten der Internet-Server auf diese
Anfragen erfassen und melden.
-
WO 02/082727 A1 beschreibt
ein Verfahren zum Erfassen von Informationen über die Leistung eines Netzes
sowie ein System und ein Verfahren zum Analysieren der erfassten
Informationen. Das System umfasst einen Analyseserver, der Planungsinformationen
an Client-Systeme liefert, auf denen Verwaltungsprogramme und -agenten
zur Prüfung
von dezentralen Internet-Serversystemen laufen. Die erfassten Informationen
werden an den Analyseserver gegeben, der Protokolldateien erzeugt,
diese analysiert und die Ergebnisse in einer Datenbank speichert.
-
Das
in der
japanischen Patent-Offenlegungsschrift
2003-178041 beschriebene
bekannte Lastausgleichssystem ist so ausgelegt, dass es auf der
Beseitigung der Ursache beruht, wenn es zu einer Überlastung
kommt, die die Systemleistung verschlechtert. Aus diesem Grund kann
im Laufe der Zeit die Systemleistung wieder hergestellt werden, aber
sie ist vorübergehend
verringert.
-
ZUSAMMENFASSUNG DER ERFINDUNG
-
Ein
Ziel der vorliegenden Erfindung ist die Bereitstellung eines effektiven
Lastausgleichssystems, das eine hohe Flexibilität bezüglich der gemeinsamen Nutzung
von ungenutzten Ressourcen bietet und leicht zu verwalten ist. Das
Ziel wird mit der Erfindung gemäß dem Oberbegriff
von Anspruch 1 erfüllt.
Die Unteransprüche
beziehen sich auf bevorzugte Ausführungsformen der Erfindung.
-
Es
ist bekannt, dass der Zugriff auf einen Dienstleistungsserver über das
Internet nach einem statistischen Muster entsprechend dem Dienst
an einem Tag, in einer Woche oder einem Monat erfolgt. So ist zum
Beispiel bekannt, dass ein firmeninterner geschäftlicher Dienst ein statistisches
Zugriffsmuster hat, bei dem sich die Zugriffslast auf den Dienstleistungsserver
an Wochentagen nach 9.00 Uhr am Morgen, also zu Geschäftsbeginn,
und nach 13.00 Uhr am Nachmittag, als nach Ende der Mittagspause,
erhöht.
-
In
einem Lastausgleichssystem zum Zuteilen der Anfragen an mehrere
Dienstleistungsserver nach der vorliegenden Erfindung werden durch
statistische Verarbeitung eines Zugriffsprotokolls erhaltene Informationen
für die
Steuerung des Lastausgleichs über die
Dienstleistungsserver verwendet, um im Voraus die Verringerung der
Leistung eines Dienstes aufgrund der Überlastung durch Anfragen an
die Dienstleistungsserver zu verhindern.
-
In
einem Aspekt eines Lastausgleichssystems nach der vorliegenden Erfindung
umfasst das System eine Lastausgleichseinrichtung und einen Verwaltungsserver,
der ein Zugriffsprotokoll statistisch verarbeitet. Auf der Grundlage
der aus der statistischen Verarbeitung erhaltenen Anzahl von Anfragen
pro Zeiteinheit bestimmt der Verwaltungsserver die Anzahl der für jeden
Zeitabschnitt erforderlichen Dienstleistungsserver im Voraus und
informiert die Lastausgleichseinrichtung über die vorausbestimmte Anzahl.
Die Lastausgleichseinrichtung stellt entsprechend den erhaltenen
Informationen über
den Zeitabschnitt und die Anzahl der Dienstleistungsserver unmittelbar
vor dem angegebenen Zeitabschnitt die Zuteilung an eine erforderliche
Anzahl von Dienstleistungsservern ein. Als Ergebnis kann eine Überlastung
der Dienstleistungsserver mit Anfragen vermieden werden, und die
Verschlechterung der Dienstleistung kann im Voraus verhindert werden.
-
Wenn
ein bestimmter Auftragstag (nachstehend als bestimmter Zugriffstag
bezeichnet) angegeben ist, an dem ein anderes Zugriffsmuster als
das normale Muster bereits festgestellt wurde oder vorhergesagt
ist, wird außerdem
an dem bestimmten Tag eine von dem normalen Muster abweichende statistische
Verarbeitung durchgeführt
und eine für den
bestimmten Tag einzigartige Zuteilungseinstellung wird vorgenommen,
wodurch eine geeignete Zugriffssteuerung ermöglicht wird.
-
Nach
der vorliegenden Erfindung kann eine verbesserte Steuerung des Lastausgleichs
erzielt werden, und eine hohe Dienstqualität kann bereitgestellt werden.
-
Diese
und andere Vorteile sind in der vorliegenden Beschreibung beschrieben.
Ein weiteres Verständnis
der Natur und Vorteile der Erfindung kann durch Bezugnahme auf die übrigen Abschnitte
der Beschreibung und die anliegenden Zeichnungen erhalten werden.
-
KURZBESCHREIBUNG DER ZEICHNUNGEN
-
1 zeigt
die Konfiguration eines Kommunikationsnetzsystems mit einem Lastausgleichssystem 3 nach
einer Ausführungsform
der vorliegenden Erfindung.
-
2 zeigt
den Aufbau der Lastausgleichseinrichtung 4 und des Verwaltungsservers 5 in
dem Lastausgleichssystem 3.
-
3 zeigt
ein Beispiel für
die Datenstruktur einer Zugriffsprotokolldatei 60 auf einer
Platte 44 der Lastausgleichseinrichtung 4 und
auf einer Platte 54 des Verwaltungsservers 5.
-
4 zeigt
ein Beispiel für
die Datenstruktur jedes der Zugriffsprotokolldatensätze 62-1 bis 62-K in
einem tatsächlichen
Zugriffsprotokoll.
-
5 zeigt
ein Ablaufdiagramm mit einem Beispiel für die von der Lastausgleichseinrichtung 4 durchgeführten Anfragezuteilungsoperationen.
-
6 zeigt
ein Beispiel einer Tabelle für
die Lastausgleichseinrichtung 4 zur Steuerung des Anfragezuteilungsziels.
-
7 zeigt
ein Beispiel einer Datensatztabelle zur Erfassung statistischer
Daten für
den Zugriff auf einen Dienstleistungsserver 7 an einem
normalen Tag.
-
8 zeigt
ein Beispiel der Datensatztabelle zur Erfassung statistischer Daten
für den
Zugriff auf den Dienstleistungsserver an einem bestimmten Zugriffstag.
-
9 zeigt
ein Ablaufdiagramm mit einem Beispiel für die von dem Verwaltungsserver 5 durchgeführte statistische
Operation an dem Zugriffsprotokoll.
-
10 zeigt
ein Beispiel einer Tabelle mit einem Ablaufplan für die Dienstleistungsserver 7-1 bis 7-N.
-
11 zeigt
ein Ablaufdiagramm mit einem weiteren Beispiel für die von der Lastausgleichseinrichtung 4 durchgeführte Anfragezuteilungsoperation.
-
AUSFÜHRLICHE
BESCHREIBUNG DER AUSFÜHRUNGSFORMEN
-
Die
Beschreibung erfolgt in Verbindung mit einer Ausführungsform
der vorliegenden Erfindung unter Bezugnahme auf die anliegenden
Zeichnungen.
-
1 zeigt
die Konfiguration eines Kommunikationsnetzsystems mit einem Lastausgleichssystem 3 nach
der vorliegenden Erfindung.
-
Das
Lastausgleichssystem 3 ist über ein Kommunikationsnetz 2 wie
etwa ein LAN oder das Internet mit mehreren Client-Terminals (nachstehend als
Terminals bezeichnet) 1 (1-1 bis 1-L)
verbunden.
-
Das
Lastausgleichssystem 3 umfasst eine mit dem Kommunikationsnetz 2 verbundene
Lastausgleichseinrichtung 4, einen Verwaltungsserver 5 zur
Kommunikation mit der Lastausgleichseinrichtung 4, eine
mit dem Verwaltungsserver verbundene Konsole 6, mit der
Lastausgleichseinrichtung 4 verbundene Dienstleistungsserver 7 (7-1 bis 7-N)
und eine mit den Dienstleistungsservern 7 verbundene Datenbank 8.
In dieser Verbindung kann der Verwaltungsserver 5 über die
Lastausgleichseinrichtung 4 mit den Dienstleistungsservern 7 kommunizieren.
-
In
dem Beispiel in 1 ist die Lastausgleichseinrichtung 4 getrennt
von dem Verwaltungsserver 5 vorgesehen. Die Funktion der
Lastausgleichseinrichtung 4 und die Funktion des Verwaltungsservers 5 können jedoch
auch kombiniert werden, um eine einzige Vorrichtung zu bilden.
-
Obwohl
der Dienstleistungsserver in dem Beispiel in 1 als eine
einzige Vorrichtung vorgesehen ist, kann der Dienstleistungsserver
auch aus mehreren Servern gebildet sein, die zum Beispiel eine Kombination
eines Internet-Servers
zur ausschließlichen
Verarbeitung der Kommunikation mit den Terminals 1 und
ein Datenbankserver zur ausschließlichen Datenbankverarbeitung
sind.
-
Eine
von einem der Terminals 1 übermittelte Anfrage wird von
der Lastausgleichseinrichtung 4 über das Kommunikationsnetz 2 empfangen.
Die Lastausgleichseinrichtung 4 teilt die empfangene Anfrage
den Dienstleistungsservern 7 entsprechend einem vorbestimmten
Lastausgleichsalgorithmus zu. Als Antwort auf die Anfrage von dem
Terminal 1 führt der
Dienstleistungsserver 7 eine Verarbeitung an der Datenbank 8 nach
Bedarf durch, erzeugt Antwortdaten und sendet die Daten an die Lastausgleichseinrichtung 4.
Die Lastausgleichseinrichtung 4 sendet die empfangenen
Antwortdaten an das Terminal 1 als Einleiter der Anfrage.
Gleichzeitig erzeugt die Lastausgleichseinrichtung 4 ein
Zugriffsprotokoll bezüglich
des Sendens und Empfangens der Anfrage.
-
2 zeigt
den Aufbau der Lastausgleichseinrichtung 4 und des Verwaltungsservers 5.
-
Die
Lastausgleichseinrichtung 4 weist einen Prozessor 40,
eine Kommunikationsschnittstelle 41 zur Verbindung von
Kommunikationsnetz 2, Verwaltungsserver 5 und
Dienstleistungsserver 7, einen Speicher 42 für die Programmspeicherung,
einen Speicher 43 für
die Datenspeicherung und eine Platte 44 zur vorübergehenden
Speicherung eines Zugriffsprotokolls auf. Diese Bestandteile sind
untereinander jeweils mittels einer internen Kommunikationsleitung 45 (nachstehend
einfach als Bus bezeichnet) wie etwa einem Bus verbunden. Ein Lastausgleichs-Steuerungsmodul 421 zum
Zuteilen der empfangenen Anfragen an den Dienstleistungsserver 7 sowie
andere Steuerungsmodule 420 sind als Steuerungssoftware
zur Ausführung
durch den Prozessor 40 im Speicher 42 gespeichert.
-
Der
Verwaltungsserver 5 weist im Wesentlichen denselben Aufbau
wie die Lastausgleichseinrichtung 4 auf, unterscheidet
sich jedoch darin, dass ein Zugriffstatistikverarbeitungsmodul 422 zum
Erfassen des Zugriffsprotokolls von der Lastausgleichseinrichtung 4,
zur statistischen Verarbeitung des Protokolls und zur Entscheidung über die
Anzahl der nötigen
Dienstleistungsserver auf der Grundlage des Ergebnisses der statistischen
Verarbeitung sowie andere Steuerungsmodule 420 im Speicher 42 für die Programmspeicherung
gespeichert sind.
-
Darüber hinaus
können
die vorstehenden Steuerungs- und Verarbeitungsmodule jeweils zuvor auf
der Platte 44 der Lastausgleichseinrichtung gespeichert
sein oder sie können
nach Bedarf über
ein Speichermedium, das für
die Ausgleichseinrichtung geeignet ist und das darauf installiert
werden kann, oder über
ein Kommunikationsmedium (zum Beispiel über eine Kommunikationsleitung
oder einen Träger auf
der Kommunikationsleitung) in die Lastausgleichseinrichtung eingebracht
werden.
-
3 zeigt
die Datenstruktur einer Datei zur Speicherung des von der Lastausgleichseinrichtung 4 erzeugten
Zugriffsprotokolls.
-
Eine
Zugriffsprotokolldatei 60 zum Speichern des Zugriffsprotokolls
weist einen Zugriffsprotokolldatei-Header 61 zur Speicherung
von Informationen über
die Zugriffsprotokolldatei 60 sowie Zugriffsprotokolldatensätze 62-k (1 ≤ k ≤ K) als die
Entität
des von der Lastausgleichseinrichtung 4 ausgegebenen Zugriffsprotokolls
auf.
-
Der
Zugriffsprotokolldatei-Header 61 enthält eine Protokollausgabe-Startzeit 611,
die das Datum angibt, an dem ein Zugriffsprotokoll zum ersten Mal
in die Datei geschrieben wurde, eine Protokollausgabe-Endezeit 612,
die das Datum angibt, an dem ein Zugriffsprotokoll zum letzten Mal
in die Datei geschrieben wurde, einen Zugriffsprotokolldateinamen 613,
der ein geändertes
Ziel angibt, auf das ein Proxy-Server sein Ausgabeziel zu einer
anderen Datei geändert
hat, und einen Zugriffsprotokolldatensatzzähler 614, der die
Anzahl der in der Datei gespeicherten Zugriffsprotokolle angibt.
-
4 zeigt
den beispielhaften Aufbau eines Zugriffsprotokolls und zeigt im
Datenformat einen der Zugriffsprotokolldatensätze 62-k, die in Einheiten
bezüglich
des Sendens/Empfangens einer Anfrage (als „Sitzung" bezeichnet) erzeugt werden.
-
Die
bei der vorliegenden Ausführungsform zu
verwendende Sitzung bezieht sich auf eine Transaktion vom Ausgeben
einer Anfrage durch den Einleiter des Zugriffs (das Terminal 1 in
der vorliegenden Ausführungsform)
bis zur Antwort durch das Zugriffsziel (der Dienstleistungsserver 7 in
der vorliegenden Ausführungsform)
auf die Anfrage.
-
Der
Zugriffsprotokolldatensatz 62-k enthält eine Lastausgleichseinrichtungsnummer 620 zur
Angabe der Lastausgleichseinrichtung 4, die den Datensatz
ausgegeben hat, eine Sitzungsnummer 621 zur Angabe der
Annahmenummer für
die Anfrage, die die Lastausgleichseinrichtung 4 empfangen
hat, einen Antwortcode 622 zur Angabe eines Fehlerzustands,
der an die vom Dienstleistungsserver ausgegebenen Antwortdaten angehängt wird,
eine Fehlernummer 623 zur Angabe eines Fehlercodes, mit
dem die Lastausgleichseinrichtung 4 dem Terminal 1 antwortet,
eine Terminaladresse 624 zur Identifizierung des Übertragungseinleiters
der empfangenen Anfrage, eine Anfrageübertragungszieladresse (Dienstleistungsserver-Adresse) 625 zur
Angabe des Übertragungsziels
für die
Anfrage, eine Anfrage-URL 626 zur Angabe des in der Anfrage
angegebenen Anfrageübertragungsziels,
Terminalinformationen 627 zur Angabe von Informationen über das
Terminal 1, das die Anfrage gesendet hat, eine Anfrageempfangszeit 628 zur
Angabe der Zeit, zu der die Lastausgleichseinrichtung 4 die
Anfrage von dem Terminal 1 empfangen hat, eine Antwortdaten-Übertragungsabschlusszeit 629 zur
Angabe der Zeit, zu der die Lastausgleichseinrichtung 4 das
Senden der Antwortdaten an das Terminal 1 beendet hat,
eine Lastausgleichseinrichtungsverarbeitungszeit 630 zur
Angabe der Zeit, die die Lastausgleichseinrichtung 4 für die Verarbeitung
benötigt,
eine Dienstleistungsserver-Antwortwartezeit 631 zur Angabe
der Wartezeit nach dem Senden der Anfrage an den Dienstleistungsserver 7 bis
zum Empfang der Antwortdaten vom Dienstleistungsserver 7,
eine Headergröße 632 der
vom Terminal 1 empfangenen Anfrage, eine Headergröße 633 der
Antwortdaten an das Terminal 1, eine Datengröße 634 der
vom Terminal 1 empfangenen Anfrage, eine Datengröße 635 der
Antwortdaten an das Terminal 1, eine Headergröße 636 der
an den Dienstleistungsserver 7 gesendeten Anfrage, eine Headergröße 637 der
vom Dienstleistungsserver 7 empfangenen Antwortdaten, eine
Datengröße 638 der
an den Dienstleistungsserver 7 gesendeten Anfrage, eine
Datengröße 639 der
vom Dienstleistungsserver 7 empfangenen Antwortdaten, einen
Sitzungszähler 640 zur
Angabe der Anzahl der gleichzeitig mit demselben Dienstleistungsserver
während der
Sitzungsverarbeitung verbundenen Sitzungen und einen Zuteilungs ziel-Dienstleistungsserver-Zähler 641 während der
Sitzungsverarbeitung.
-
6 zeigt
ein Beispiel für
den Aufbau einer Tabelle in der Lastausgleichseinrichtung 4 zur
Steuerung der Anfragezuteilungsziele.
-
Eine
Zuteilungsziel-Verwaltungstabelle 70 enthält eine
Verbindungs-Serveradresse 701 zur Angabe der Adresse eines
mit der Lastausgleichseinrichtung 4 verbundenen Dienstleistungsservers,
der als das Anfragezuteilungsziel verwendet werden kann, eine Zuteilungszielflagge 702 zur
Angabe, ob der Dienstleistungsserver gegenwärtig als Zuteilungsziel verwendet
wird oder nicht, eine Verbindungssitzungsobergrenze 703 zur
Angabe des oberen Grenzwerts für
die Anzahl der gleichzeitig mit dem Dienstleistungsserver verbundenen
Sitzungen und einen Verbindungssitzungszähler 704 zur Angabe
der Anzahl der gegenwärtig
mit dem Dienstleistungsserver verbundenen Sitzungen.
-
5 zeigt
ein Ablaufdiagramm zur Erläuterung
einer Anfragezuteilungsfunktion, die realisiert wird, wenn der Prozessor 40 in
der Lastausgleichseinrichtung 4 das Lastausgleichs-Steuerungsmodul 421 ausführt.
-
Wenn
die Lastausgleichseinrichtung 4 eine Anfrage von dem Terminal 1 empfängt (Schritt S2001),
prüft die
Ausgleichseinrichtung, ob ein Fehler in der Anfrage vorliegt oder
nicht (Schritt S2002). Bei Vorliegen eines Fehlers sendet die Lastausgleichseinrichtung
den Fehler an das Terminal 1 (Schritt S2011). Ist die Anfrage
korrekt, vergleicht die Lastausgleichseinrichtung die Verbindungssitzungsobergrenze 703 und
den Verbindungssitzungszähler 704 in
der Zuteilungsziel-Verwaltungstabelle 70, um das Vorhandensein
oder Fehlen des Dienstleistungsservers 7 festzustellen,
dem die Anfrage zugeteilt werden kann (Schritt S2003).
-
Erreicht
der Verbindungssitzungszähler 704 aller
Dienstleistungsserver 7 die Verbindungssitzungsobergrenze 703,
ist es nicht möglich,
die Anfrage an den Dienstlei stungsserver zu senden. Daher sendet
die Lastausgleichseinrichtung den Fehler an das Terminal 1 (Schritt
S2010).
-
Wenn
es Dienstleistungsserver 7 gibt, an die die Anfrage gesendet
werden kann, vergleicht die Lastausgleichseinrichtung die jeweiligen
Verbindungssitzungszähler 704 der
Dienstleistungsserver 7, bestimmt einen der Dienstleistungsserver 7 mit dem
kleinsten Verbindungssitzungszähler
als das Zuteilungsziel und erhöht
den Wert des kleinsten Verbindungssitzungszählers 704 um 1 (Schritt
S2004). Nach Bestimmen des Dienstleistungsservers 7, dem die
Anfrage zugeteilt wird, sendet die Lastausgleichseinrichtung die
Anfrage an den entsprechenden Dienstleistungsserver 7 (Schritt
S2005) und wartet auf eine Antwort von dem Dienstleistungsserver 7 (Schritt
S2006).
-
Erhält die Lastausgleichseinrichtung
keine Antwort von dem Dienstleistungsserver 7, sendet die Ausgleichseinrichtung
nach Zeitabschaltung (Schritt S2007) einen Fehler an das Terminal 1 (Schritt S2011).
-
Bei
Empfang von Antwortdaten von dem Dienstleistungsserver 7 verringert
die Lastausgleichseinrichtung den Wert des Verbindungssitzungszählers 704 um
1 (Schritt S2008) und prüft,
ob in den Antwortdaten ein Fehler vorliegt oder nicht (Schritt S2009).
Bei Vorliegen eines Fehlers wie zum Beispiel einer Protokollverletzung
in den Antwortdaten sendet die Lastausgleichseinrichtung einen Fehler
an das Terminal 1 (Schritt S2011). Sind die Antwortdaten korrekt,
sendet die Lastausgleichseinrichtung die Antwortdaten an das Terminal 1 (Schritt
S2010).
-
Auch
in jedem der Schritte S2010 und S2011 erzeugt die Lastausgleichseinrichtung 4 einen
Zugriffsprotokolldatensatz 62-k, wie er in 4 gezeigt, gemäß dem Verarbeitungsergebnis
(Schritt S2012) und gibt ihn in die Zugriffsprotokolldatei 60 auf
der Platte 44 aus (Schritt S2013). Außerdem aktualisiert die Lastausgleichseinrichtung
den Wert des Zugriffsprotokolldatensatzzählers 614 im Zugriffsprotokolldatei-Header 61 (Schritt
S2014).
-
Nachstehend
wird die Verarbeitung im Verwaltungsserver 5 erläutert.
-
7 zeigt
ein Beispiel für
den Aufbau einer Tabelle, die erzeugt wird, wenn der Prozessor 40 das Zugriffstatistikverarbeitungsmodul 422 im
Verwaltungsserver 5 ausführt.
-
Eine
Zugriffsdatensatztabelle 80 speichert die aus dem Zugriffsprotokoll
erhaltenen statistischen Daten. Die Zugriffsdatensatztabelle 80 enthält Datensatztabellen 81-1 bis 81-7 für jeden
einzelnen Wochentag im Hinblick auf einen vollständigen Zugriffsdatensatz 801 für bestimmte
Zeitabschnitte zur Erfassung einer Anfrageverarbeitungshäufigkeit
für jeden
Zeitabschnitt und im Hinblick auf einen Datensatzzähler 802.
Der vollständige
Zugriffsdatensatz 801 für
bestimmte Zeitabschnitte enthält
außerdem Elemente
zur Erfassung eines Zugriffszählers 811 zur
Angabe der Anzahl der normal verarbeiteten Zugriffe pro Stunde,
einen Zugriffszähler 812 zur
Angabe der Anzahl der zurückgegebenen
Zugriffsfehler, weil die Anfrage nicht an den Dienstleistungsserver 7 gesendet
werden konnte, eine Antwortzeit 813 von dem Dienstleistungsserver,
einen Dienstleistungsserver-Zähler 814 zur
Angabe der Anzahl der Dienstleistungsserver als Zuteilungsziele
und einen maximalen Sitzungszähler 815.
-
Die
Datensatztabellen 81-1 bis 81-7 für jeden Tag
einer Woche enthalten außerdem
mit einer Liste 803 verbundene Zugriffsdatensatzlisten 82-1 bis 82-X für bestimmte
Zeitabschnitte und für
bestimmte konstante vergangenen Zeiträume (entsprechend einem Tag).
Die Bestandteile der Zugriffsdatensatzlisten 82-1 bis 82-X für bestimmte
Zeitabschnitte sind dieselben wie die des vollständigen Zugriffsdatensatzes 801 für bestimmte
Zeitabschnitte, außer
dass Informationen für
ein Datum 821 hinzugefügt
sind.
-
In
dem Beispiel in 7 ist die Datensatztabelle 81 in
Einheiten von Tagen einer Woche eingeteilt. Die Datensatztabelle 81 kann
jedoch auch zum Beispiel in Einheiten von Tagen (erster, zweiter,
... oder einunddreißigster
Tag) eines Monats oder in Form der ersten, mittleren oder letzten
zehn Tage eines Monats eingeteilt sein.
-
8 zeigt
ein Beispiel für
den Aufbau einer weiteren Tabelle, die erzeugt wird, wenn der Prozessor 40 im
Verwaltungsserver 5 das Zugriffstatistikverarbeitungsmodul 422 ausführt.
-
Eine
Zugriffsdatensatztabelle 90 für einen bestimmten Tag dient
zum Erfassen eines Zugriffsdatensatzes für einen bestimmten vom Bediener
angegebenen Zugriffstag neben der Zugriffsdatensatztabelle 80.
-
Die
Zugriffsdatensatztabelle 90 für einen bestimmten Tag enthält eine
Liste 91 mit bestimmten Zugriffstagen mit dem vom Bediener
angegebenen bestimmten Zugriffstag und Musterdatensatztabellen 92-1 bis 92-Z zur
Erfassung eines Zugriffsdatensatzes für jedes Muster des bestimmten
Tages. Die Liste 91 mit bestimmten Zugriffstagen enthält Blöcke 911-1 bis 911-W für bestimmte
Zugriffstage. Jeder der Blöcke
für bestimmte
Zugriffstage enthält
einen Index 912 für
den nächsten
Block, einen bestimmten Zugriffstag 913 und ein Muster 914 für den bestimmten Zugriffstag
zur Angabe einer Gruppe, zu der bestimmte Zugriffstage mit einem
identischen Zugriffsmuster gehören.
-
Das
Festlegen des Blocks für
den bestimmten Zugriffstag erfolgt durch den Bediener, der Daten über die
mit dem Verwaltungsserver 5 verbundene Konsole 6 eingibt.
-
Der
Bediener gibt ein Datum als den bestimmten Zugriffstag und das Muster
für den
bestimmten Zugriffstag an der Konsole 6 ein. Der Verwaltungsserver 5 setzt
das Datum und das Muster für den
an der Konsole 6 eingegebenen bestimmten Zugriffstag in
dem bestimmten Zugriffstag 913 bzw. dem Muster 914 für den bestimmten
Zugriffstag eines neu erstellten Block 911 für den bestimmten
Zugriffstag. Die Blöcke 911 für bestimmte
Zugriffstage sind mit der Liste 91 mit bestimmten Zugriffstagen
verbunden, so dass die Blöcke in
aufsteigender Reihenfolge der bestimmten Zugriffstage 913 angeordnet
sind.
-
Jede
der Musterdatensatztabellen 92-1 bis 92-Z enthält einen
vollständigen
Zugriffsdatensatz 921 für
bestimmte Zeitabschnitte und einen Datensatzzähler 922. Der vollständige Zugriffsdatensatz 921 für bestimmte
Zeitabschnitte enthält
Datensatzelemente für
einen Zugriffszähler 924 zur
Angabe der Anzahl der normal verarbeiteten Zugriffe pro Stunde, einen
Zugriffszähler 925 zur
Angabe der Anzahl der an den Dienstleistungsserver 7 zurückgegebenen Fehler,
weil die Anfrage nicht an ihn gesendet werden konnte, eine Antwortzeit 926 von
dem Dienstleistungsserver, einen Dienstleistungsserver-Zähler 927 zur
Angabe der Anzahl der Dienstleistungsserver als Zuteilungsziele
und einen maximalen Zugriffssitzungszähler 928.
-
Jede
der Musterdatensatztabellen 92-1 bis 92-Z enthält mit einer
Liste 923 verbundene Zugriffsdatensatzlisten 93-1 bis 93-Y für bestimmte
Zeitabschnitte und für
einen bestimmten Zeitraum (entsprechend einem Tag).
-
Weil
die Zugriffsdatensatztabelle 80 und die Zugriffsdatensatztabelle 90 für einen
bestimmten Tag, wie in 7 und 8 gezeigt,
eine konstante Menge von Zugriffsdatensätzen für bestimmte Zeitabschnitte
vergangener Daten enthalten, kann der Zugriffsdatensatz für das angegebene
Datum aus dem statistisch verarbeiteten Ergebnis entfernt werden.
-
Der
Bediener gibt zum Beispiel ein Datum an der Konsole 6 ein,
für das
er den Zugriffsdatensatz löschen
möchte.
-
Wenn
der Prozessor 40 das Zugriffstatistikverarbeitungsmodul 422 ausführt, sieht
der Verwaltungsserver 5 zuerst in der Zugriffsdatensatztabelle 90 für einen
bestimmten Tag nach und prüft
das Vorhandensein oder Fehlen einer Zugriffsdatensatzliste 93 für bestimmte
Zeitabschnitte mit Informationen über dasselbe Datum 931 wie
ein an der Konsole 6 eingegebenes Datum. Wenn die Zugriffsdatensatzliste 93 für bestimmte
Zeitabschnitte mit demselben Datum vorhanden ist, wird die Zugriffsdatensatzliste 93 für bestimmte
Zeit abschnitte aus der Liste 923 entfernt, und der in der
Zugriffsdatensatzliste 93 für bestimmte Zeitabschnitte
erfasste Wert wird von dem vollständigen Zugriffsdatensatz 921 für bestimmte Zeitabschnitte
in einer Musterdatensatztabelle 92 subtrahiert. Danach
wird die Zugriffsdatensatzliste 93 für bestimmte Zeitabschnitte
initialisiert und mit dem Ende der Liste 923 verbunden.
-
Wenn
Daten über
das Datum in der Zugriffsdatensatztabelle 90 für einen
bestimmten Tag fehlen, sieht der Verwaltungsserver in der Zugriffsdatensatztabelle 80 nach
und prüft
das Vorhandensein oder Fehlen der Zugriffsdatensatzliste 82 für bestimmte Zeitabschnitte
mit Informationen über
dasselbe Datum 821 wie das an der Konsole 6 eingegebene
Datum. Wenn die Zugriffsdatensatzliste 82 für bestimmte
Zeitabschnitte mit demselben Datum vorhanden ist, wird die Zugriffsdatensatzliste 82 für bestimmte Zeitabschnitte
aus der Liste 803 entfernt, und der in der Zugriffsdatensatzliste 82 für bestimmte
Zeitabschnitte erfasste Wert wird von dem vollständigen Zugriffsdatensatz 801 für bestimmte
Zeitabschnitte subtrahiert. Danach wird die Zugriffsdatensatzliste 82 für bestimmte
Zeitabschnitte initialisiert und mit dem Ende der Liste 803 verbunden.
-
Mit
der vorstehenden Prozedur kann der Zugriffsdatensatz für das vom
Bediener angegebene Datum aus dem statistisch verarbeiteten Ergebnis entfernt
werden.
-
9 zeigt
ein Ablaufdiagramm mit einer Zusammenfassung der statistischen Verarbeitungsfunktion,
die realisiert wird, wenn der Prozessor 40 im Verwaltungsserver 5 das
Zugriffstatistikverarbeitungsmodul 422 ausführt.
-
Der
Verwaltungsserver 5 erfasst zuerst die Zugriffsprotokolldatei 60,
die auf der Platte 44 der Lastausgleichseinrichtung 4 vorhanden
ist (Schritt S2101). Für
die Dateierfassung kann eine Dateiübertragung zwischen Servern
auf der Grundlage des FTP-Protokolls oder dergleichen verwendet
werden, oder eine Platte kann gemeinsam von der Lastausgleichseinrichtung 4 und
dem Verwaltungsserver 5 genutzt werden und die Zugriffsprotokolldatei 60 kann
auf der gemeinsam genutzten Platte gespeichert sein. Nach Erfassen
der Zugriffsprotokolldatei 60 liest der Verwaltungsserver
die Zugriffsprotokolldatensätze 62-1 bis 62-K in
der Zugriffsprotokolldatei in einen Datenspeicher 53 des
Verwaltungsservers 5 (Schritt S2102). Der Verwaltungsserver
führt die nachstehende
Operation an den in den Speicher eingelesenen Zugriffsprotokolldatensätzen 62-1 bis 62-K aus.
-
Wenn
das Datum der Anfrageempfangszeit 628 eines Zugriffsprotokolldatensatzes 62 mit
dem Block 911-1 für
den bestimmten Zugriffstag übereinstimmt
(Schritt S2103), identifiziert der Verwaltungsserver einen der Einträge in den
Musterdatensatztabellen 92-1 bis 92-Z durch das
Muster 914 für
den bestimmten Zugriffstag des Blocks 911-1 für den bestimmten
Zugriffstag (Schritt S2104).
-
Wenn
das Datum 931 in der mit der Liste 923 verbundenen
Zugriffsdatensatzliste 93-1 für bestimmte Zeitabschnitte
des Eintrags nicht mit dem Datum der Anfrageempfangszeit 628 des
Zugriffsprotokolldatensatzes 62 übereinstimmt (Schritt S2105), entfernt
der Verwaltungsserver als Nächstes
die mit dem Ende der Liste 923 verbundene Zugriffsdatensatzliste 93-Y für bestimmte
Zeitabschnitte aus der Liste, initialisiert die Zugriffsdatensatzliste 93-Y für bestimmte
Zeitabschnitte (genau genommen werden das Datum des bestimmten Zugriffstags 913 in
Block 911-1 für
den bestimmten Zugriffstag in dem Datum 931 und der Wert „0" in den übrigen Daten
gesetzt) und verbindet dann die entsprechende Liste 93-Y mit dem
Anfang der Liste 923 (Schritt S2106). Als Ergebnis wird
die initialisierte und mit dem Anfang der Liste verbundene Liste 93-Y mit
der Zugriffsdatensatzliste 93-1 für bestimmte Zeitabschnitte
ersetzt.
-
Unter
Verwendung der aus dem Zugriffsprotokolldatensatz 62 erhaltenen
Werte aktualisiert der Verwaltungsserver als Nächstes die Werte des Zugriffszählers 924,
des abnormalen Zugriffszählers 925 und
der Antwortzeit 926 in dem Zeitabschnitt in der Musterdatensatztabelle 92 und
der Zugriffs datensatzliste 93-1 für bestimmte Zeitabschnitte
(Schritt S2107). Im Einzelnen wird, wenn ein Wert in der Fehlernummer 623 im
Zugriffsprotokolldatensatz 62 gesetzt ist (das heißt wenn
ein Fehler eingetreten ist), der Wert des abnormalen Zugriffszählers 925 um
1 erhöht;
anderenfalls wird der Wert des Zugriffszählers 924 um 1 erhöht. Außerdem wird
der Wert der Dienstleistungsserver-Antwortwartezeit 631 zu
der Antwortzeit 926 addiert.
-
Der
Verwaltungsserver vergleicht den Zuteilungsziel-Dienstleistungsserver-Zähler 641 im
Zugriffsprotokolldatensatz 62 mit dem Wert des Zuteilungsziel-Dienstleistungsserver-Zählers 927 in
dem entsprechenden Zeitabschnitt in der Musterdatensatztabelle 92 und
der Zugriffsdatensatzliste 93-1 für bestimmte Zeitabschnitte
(Schritt S2108). Wenn der Wert 641 im Zugriffsprotokolldatensatz
größer ist, wird
der Zuteilungsziel-Dienstleistungsserver-Zähler 927 in der Musterdatensatztabelle 92 und
der Zugriffsdatensatzliste 93-1 für bestimmte Zeitabschnitte auf
den Wert im Zugriffsprotokolldatensatz aktualisiert (Schritt S2109).
-
Der
Verwaltungsserver vergleicht außerdem einen
Zugriffssitzungszähler 640 im
Zugriffsprotokolldatensatz 62 mit dem Wert des maximalen
Zugriffssitzungszählers 928 in
dem entsprechenden Zeitabschnitt in der Musterdatensatztabelle 92 und
der Zugriffsdatensatzliste 93-1 für bestimmte Zeitabschnitte (Schritt
S2110). Wenn der Wert 640 im Zugriffsprotokolldatensatz
größer ist,
wird der maximale Zugriffssitzungszähler 928 in der Musterdatensatztabelle 92 und
der Zugriffsdatensatzliste 93-1 für bestimmte Zeitabschnitte
auf den Wert im Zugriffsprotokolldatensatz aktualisiert (Schritt
S2111).
-
Wenn
das Datum der Anfrageempfangszeit 628 in dem Zugriffsprotokolldatensatz 62 nicht
mit dem Block 911-1 als erster Block der Liste 91 mit
bestimmten Zugriffstagen übereinstimmt
(Schritt S2103), identifiziert andererseits der Verwaltungsserver
den Tag anhand des Datums der Anfra geempfangszeit und identifiziert
einen Eintrag in den Datensatztabellen 81-1 bis 81-7 (Schritt
S2112).
-
Wenn
das Datum 821 in der mit der Liste 803 des entsprechenden
Eintrags verbundenen Zugriffsdatensatzliste 82-1 für bestimmte
Zeitabschnitte nicht mit dem Datum der Anfrageempfangszeit 628 im
Zugriffsprotokolldatensatz 62 übereinstimmt (Schritt S2113),
entfernt der Verwaltungsserver die mit dem Ende der Liste 803 verbundene
Zugriffsdatensatzliste 82-X für bestimmte Zeitabschnitte
aus der Liste, initialisiert die Zugriffsdatensatzliste 82-X für bestimmte
Zeitabschnitte (genau genommen werden das Datum der Anfrageempfangszeit 628 im
Zugriffsprotokolldatensatz 62 in dem Datum 821 und der
Wert „0" für die übrigen Daten
gesetzt) und verbindet dann die entsprechende Liste 82-X mit
dem Anfang der Liste 803 (Schritt S2114). Als Ergebnis wird
die initialisierte und mit dem Anfang der Liste verbundene Liste 82-X mit
der Zugriffsdatensatzliste 82-1 für bestimmte Zeitabschnitte
ersetzt.
-
Unter
Verwendung der aus dem Zugriffsprotokolldatensatz 62 erhaltenen
Werte aktualisiert der Verwaltungsserver die Werte des normalen
Zugriffszählers 811,
des abnormalen Zugriffszählers 812 und der
Antwortzeit 813 in dem entsprechenden Zeitabschnitt in
der Datensatztabelle 81 und der Zugriffsdatensatzliste 82-1 für bestimmte
Zeitabschnitte (Schritt S2115). Im Einzelnen wird, wenn ein Wert
für die Fehlernummer 623 im
Zugriffsprotokolldatensatz 62 gesetzt ist, das heißt wenn
ein Fehler eingetreten ist, der Wert des abnormalen Zugriffszählers 812 um
1 erhöht;
anderenfalls wird der Wert des normalen Zugriffszählers 811 um
1 erhöht.
Der Wert der Dienstleistungsserver-Antwortwartezeit 631 wird
zu der Antwortzeit 813 addiert.
-
Der
Verwaltungsserver vergleicht den Zuteilungsziel-Dienstleistungsserver-Zähler 641 im
Zugriffsprotokolldatensatz 62 mit dem Wert des Zuteilungsziel-Dienstleistungsserver-Zählers 814 in
dem entsprechenden Zeitabschnitt in der Datensatztabelle 81 und
der Zugriffsdatensatzliste 82-1 für bestimmte Zeitabschnitte
(Schritt S2116). Wenn der Wert 641 im Zugriffsprotokolldatensatz
größer ist,
wird der Zuteilungsziel-Dienstleistungsserver-Zähler 814 in der Datensatztabelle 81 und
der Zugriffsdatensatzliste 82-1 für bestimmte Zeitabschnitte
auf den Wert im Zugriffsprotokolldatensatz aktualisiert (Schritt S2117).
-
Der
Verwaltungsserver vergleicht außerdem den
Zugriffssitzungszähler 640 im
Zugriffsprotokolldatensatz 62 mit dem Wert des maximalen
Sitzungszähler 815 in
dem entsprechenden Zeitabschnitt in der Datensatztabelle 81 und
der Zugriffsdatensatzliste 82-1 für bestimmte Zeitabschnitte
(Schritt S2118). Wenn der Wert 640 im Zugriffsprotokolldatensatz größer ist,
wird der maximale Sitzungszähler 815 in der
Datensatztabelle 81 und der Zugriffsdatensatzliste 82-1 für bestimmte
Zeitabschnitte auf den Wert im Zugriffsprotokolldatensatz aktualisiert
(Schritt S2119).
-
Der
Verwaltungsserver führt
die Operationen der vorstehenden Schritte S2103 bis S2115 an den Zugriffsprotokolldatensätzen 62-1 bis 62-K durch (Schritt
S2120).
-
Wenn
als Letztes das im Header 61 der Zugriffsprotokolldatei 60 erfasste
Datum der Protokollausgabe-Endezeit 612 den bestimmten
Zugriffstag 913 im Block 911-1 für den bestimmten
Zugriffstag überschreitet
(Schritt S2121), entfernt der Verwaltungsserver den Block 911-1 für den bestimmten
Zugriffstag aus der Liste 91 mit bestimmten Zugriffstagen
(Schritt S2122).
-
10 zeigt
ein Beispiel für
den Aufbau einer Dienstleistungsserver-Ablaufplantabelle, die erzeugt
wird, wenn der Prozessor 40 im Verwaltungsserver 5 das
Zugriffstatistikverarbeitungsmodul 422 ausführt.
-
Eine
Dienstleistungsserver-Ablaufplantabelle 100 enthält Ablauflisten 1000-0 bis 1000-23 für bestimmte
Zeitabschnitte. Jede der Ablauflisten für bestimmte Zeitabschnitte
enthält
ein Zuteilungsziel-Dienstleistungsserver-Zählerfeld 1001 zum
Speichern der Anzahl von Dienstleistungsservern als Zuteilungsziele,
ein Sitzungszählerfeld 1002 zum Festlegen
der Obergrenze einer Gesamtzahl von zu verbindenden Sitzungen und
ein Dienstleistungsserver-Adressfeld 1003 zum Speichern
der Adressen von Dienstleistungsservern als tatsächliche Zuteilungsziele.
-
Die
Dienstleistungsserver-Ablaufplantabelle 100 wurde zuvor
vom Verwaltungsserver 5 erzeugt, zum Beispiel am vorherigen
Tag.
-
Der
Verwaltungsserver 5 sieht zuerst in der Liste 91 mit
bestimmten Zugriffstagen nach und prüft, ob der nächste Tag
ein bestimmter Zugriffstag ist oder nicht. Ist der nächste Tag
der bestimmte Zugriffstag, bestimmt der Verwaltungsserver die zu
verwendende Datensatztabelle 92-n auf der Grundlage des
Musters 914 für
den bestimmten Zugriffstag 914 in dem Block 911 für den bestimmten
Zugriffstag. Ist der nächste
Tag nicht der bestimmte Zugriffstag, bestimmt der Verwaltungsserver
die zu verwendende Datensatztabelle 81 auf der Grundlage
des betreffenden Tags in der Zugriffsdatensatztabelle 80.
-
Nach
Bestimmung der zu verwendenden Datensatztabelle findet der Verwaltungsserver
die Anzahl der nötigen
Server in jedem Zeitabschnitt.
-
An
dem bestimmten Zugriffstag berechnet der Verwaltungsserver 5 zum
Beispiel eine durchschnittliche Durchsatzleistung durch Dividieren
einer Summe des normalen Zugriffszählers 924 und des abnormalen
Zugriffszählers 925 in
jedem Zeitabschnitt, enthalten in dem vollständigen Zugriffsdatensatz 921 für bestimmte
Zeitabschnitte in der Zugriffsdatensatztabelle 90 für einen
bestimmten Tag, durch einen Datensatzzähler und eine Zeiteinheit und
setzt den berechneten Wert für
den Sitzungszähler 1002.
-
Ähnlich wie
vorstehend beschrieben, berechnet der Verwaltungsserver eine durchschnittliche Antwortzeit
für jeden
Zeitabschnitt. Ist die berechnete durchschnittliche Antwortzeit
größer als
eine zuvor durch das System bestimmte maximale Referenzantwortzeit,
prüft der
Verwaltungsserver den Zuteilungsziel-Dienstleistungsserver-Zähler 927 in
dem entsprechenden Zeitabschnitt. Wenn es möglich ist, die Anzahl dieser
Zuteilungsziel-Dienstleistungsserver zu erhöhen, setzt er den um 1 erhöhten Wert
des Zuteilungsziel-Dienstleistungsserver-Zählers 927 für den Zuteilungsziel-Dienstleistungsserver-Zähler 1001 als
einen Zuteilungsziel-Dienstleistungsserver-Zähler.
-
Wenn
es nicht möglich
ist, die Anzahl der Zuteilungsziel-Dienstleistungsserver zu erhöhen, setzt der
Verwaltungsserver den Wert des Zuteilungsziel-Dienstleistungsserver-Zählers 927 unverändert für den Zuteilungsziel-Dienstleistungsserver-Zähler 1001.
Gleichzeitig vergleicht der Verwaltungsserver den für den Sitzungszähler 1002 eingestellten
Wert mit dem maximalen Zugriffssitzungszähler 928, wählt den
kleineren dieser Werte und ersetzt den Wert des Sitzungszählers 1002 mit
einem Wert, der durch Subtrahieren eines konstanten Werts (zum Beispiel
10, 100 oder so, zuvor entsprechend der Größe des Systems eingestellt)
von dem ausgewählten
Wert erhalten wird.
-
Ist
im Gegensatz dazu die durchschnittliche Antwortzeit um eine konstante
Zeit (zum Beispiel die Hälfte
oder so der maximalen Referenzantwortzeit oder dergleichen, wie
zuvor bestimmt) oder mehr kürzer
als die maximale Referenzantwortzeit, setzt der Verwaltungsserver
einen durch Subtrahieren von 1 von dem Wert des Zuteilungsziel-Dienstleistungsserver-Zählers 927 erhaltenen
Wert für
den Zuteilungsziel-Dienstleistungsserver-Zähler 1001 als einen
Zuteilungsziel-Dienstleistungsserver-Zähler.
-
Auch
wenn der Wert in der Zugriffsdatensatztabelle 80 verwendet
wird, bestimmt der Verwaltungsserver die Anzahl der Zuteilungsziel-Dienstleistungsserver
durch Operationen ähnlich
der vorstehenden.
-
An
einem anderen Tag als dem bestimmten Zugriffstag berechnet der Verwaltungsserver
eine durchschnittliche Durchsatzleistung durch Dividieren einer
Summe des normalen Zugriffszählers 811 und des
abnormalen Zugriffszählers 812 in
jedem Zeitabschnitt, enthalten in der Datensatztabelle 81 für den entsprechenden
Tag im vollständigen
Zugriffsdatensatz 801 für
bestimmte Zeitabschnitte in der Zugriffsdatensatztabelle 80,
durch den Datensatzzähler
und die Zeiteinheit und setzt den berechneten Wert für den Sitzungszähler 1002.
-
Ähnlich wie
vorstehend beschrieben, berechnet der Verwaltungsserver eine durchschnittliche Antwortzeit
für jeden
Zeitabschnitt. Ist die berechnete durchschnittliche Antwortzeit
größer als
die zuvor durch das System bestimmte maximale Referenzantwortzeit,
prüft der
Verwaltungsserver den Zuteilungsziel-Dienstleistungsserver-Zähler 814 für den entsprechenden
Zeitabschnitt. Wenn es möglich
ist, die Anzahl der Zuteilungsziel-Dienstleistungsserver zu erhöhen, setzt
der Verwaltungsserver den um 1 erhöhten Wert des Zuteilungsziel-Dienstleistungsserver-Zählers 814 für den Zuteilungsziel-Dienstleistungsserver-Zähler 1001 als
einen Zuteilungsziel-Dienstleistungsserver-Zähler.
-
Wenn
es nicht möglich
ist, die Anzahl der Zuteilungsziel-Dienstleistungsserver zu erhöhen, setzt der
Verwaltungsserver den Wert des Zuteilungsziel-Dienstleistungsserver-Zählers 814 unverändert für den Zuteilungsziel-Dienstleistungsserver-Zähler 1001.
Gleichzeitig vergleicht der Verwaltungsserver den für den Sitzungszähler 1002 eingestellten
Wert mit dem Wert des maximalen Sitzungszählers 815, wählt den
kleineren dieser Werte und ersetzt den Wert des Sitzungszählers 1002 mit
einem Wert, der durch Subtrahieren eines konstanten Werts (derselbe
Wert wie für
den vorstehend erwähnten
bestimmten Zugriffstag) von dem ausgewählten Wert erhalten wird.
-
Ist
im Gegensatz dazu die durchschnittliche Antwortzeit um einen konstanten
Wert (derselbe Wert wie für
den vorstehend erwähnten
bestimmten Zugriffstag) oder mehr kürzer als die maximale Referenzantwortzeit,
setzt der Verwaltungsserver einen durch Subtrahieren von 1 von dem
Wert des Zuteilungsziel-Dienstleistungsserver-Zählers 814 erhaltenen
Wert für
den Zuteilungsziel-Dienstleistungsserver-Zähler 1001 als einen
Zuteilungsziel-Dienstleistungsserver-Zähler.
-
Bei
der vorstehenden Ausführungsform
wird jeder Datensatz in der Zugriffsdatensatztabelle 80 an einem
anderen als dem bestimmten Zugriffstag in Einheiten von Tagen einer
Woche erstellt. Die vorliegende Erfindung ist jedoch nicht auf das
vorstehende Beispiel beschränkt,
sondern der Datensatz kann auf der Grundlage einer anderen Referenz
erstellt werden.
-
Wie
vorstehend beschrieben, weist der Verwaltungsserver 5 nach
Bestimmen der Anzahl der Zuteilungsziel-Dienstleistungsserver für jeden
Zeitabschnitt die Dienstleistungsserver 7-1 bis 7-N entsprechend
dem im Feld 1001 des Zuteilungsziel-Dienstleistungsserver-Zählers eingestellten
Wert zu und setzt die Adressen der Dienstleistungsserver für die Dienstleistungsserver-Adressen 1003.
Das Verfahren zum Zuweisen von Dienstleistungsservern umfasst das
Zuweisen einer nötigen
Anzahl von Dienstleistungsservern immer in aufsteigender Reihenfolge
ihrer Adressen und ein Rotationssystem, bei dem die Adresse des
zuletzt zugewiesenen Dienstleistungsservers immer gehalten wird
und die Dienstleistungsserver fortlaufend unter Verwendung der gehaltenen
Adresse als Referenz zugewiesen werden.
-
Nach
Erzeugen der Dienstleistungsserver-Ablaufplantabelle 100 mit
dem vorstehend beschriebenen Verfahren sendet der Verwaltungsserver 5 die
Dienstleistungsserver-Ablaufplantabelle 100 an die Lastausgleichseinrichtung 4.
-
Bei
der Ausführung
des erzeugten Lastausgleichs-Steuerungsmoduls 421 speichert
der Prozessor 40 in der Lastausgleichseinrichtung 4 die
empfangene Dienstleistungsserver-Ablaufplantabelle 100 im Datenspeicher 43,
sieht in der Dienstleistungsserver-Ablaufplantabelle 100 nach,
zum Beispiel nach 59 Minuten jede Stunde, und aktualisiert die Zuteilungsziel-Verwaltungstabelle 70 entsprechend
dem angegebenen Inhalt. Im Einzelnen setzt der Prozessor im Hinblick
auf den in der Dienstleistungsserver-Adresse 1003 in der Dienstleistungsserver-Ablaufplantabelle 100 angegebenen
Dienstleistungsserver die Zuteilungszielflagge 702 in der
Zuteilungsziel-Verwaltungstabelle 70. Außerdem setzt
der Prozessor einen durch Dividieren des Werts des Sitzungszählers 1002 in
der Dienstleistungsserver-Ablaufplantabelle 100 durch den
Zuteilungsziel-Dienstleistungsserver-Zähler 1001 erhaltenen
Wert für
die Verbindungssitzungsobergrenze 703 des Dienstleistungsservers,
für den
die Zuteilungszielflagge 702 darin gesetzt ist.
-
Danach
führt der
Prozessor 40 in der Lastausgleichseinrichtung 4 das
Lastausgleichs-Steuerungsmodul 421 aus, um die Anfrage
entsprechend dem Inhalt der Zuteilungsziel-Verwaltungstabelle 70 zuzuweisen.
-
Nach
der vorstehenden Ausführungsform wird
der Ablaufplan für
das Lastausgleichssystem automatisch anhand statistischer Daten
der Vergangenheit bestimmt, und die Lastausgleichssteuerung wird
durchgeführt,
um eine Überlastung
des Dienstleistungsservers zu vermeiden. Als Ergebnis kann eine
Verschlechterung der Dienstqualität durch Überlastung des Dienstleistungsservers
verringert werden.
-
Auch
für einen
bestimmten Tag mit einem anderen Muster als dem normalen Zugriffsmuster
kann ein Ablaufplan für
den bestimmten Tag automatisch bestimmt werden, wenn der Bediener
zuvor den bestimmten Tag eingibt, um dadurch eine geeignetere Lastausgleichssteuerung
zu ermöglichen.
-
Der
Verwaltungsserver 5 kann über den nicht als Zuteilungsziel
auf der Grundlage der Dienstleistungsserver-Ablaufplantabelle 100 zugewiesenen Dienstleistungsserver
eine andere Anwendung als den über
die Lastausgleichseinrichtung 4 bereitgestellten Dienst
ausführen.
Weil die für
den über
die Lastausgleichseinrichtung 4 auszuführenden Dienst nötigen Dienstleistungsserver
auf der Grundlage der Dienstleistungsserver-Ablaufplantabelle 100 zugewiesen
werden, kann das System seine Transaktionen ohne Beeinflussung des
Dienstes ausführen
und effizient genutzt werden.
-
Erfolgt
keine Transaktion, kann der nicht als Zuteilungsziel zugewiesene
Dienstleistungsserver auch gestoppt werden. Der Verwaltungsserver
prüft zum
Beispiel nach 5 Minuten jede Stunde die Dienstleistungsserver-Adresse 1003 in
dem entsprechenden Zeitabschnitt in der Dienstleistungsserver-Ablaufplantabelle 100.
Ist dort ein nicht als Zuteilungsziel zugewiesener Dienstleistungsserver
enthalten, kommuniziert der Verwaltungsserver mit dem entsprechenden
Dienstleistungsserver 7, um den Server 7 zu stoppen.
Weil der nicht benötigte
Dienstleistungsserver gestoppt werden kann, kann der Stromverbrauch
des gesamten Systems gesenkt werden.
-
Im
Hinblick auf den gestoppten Dienstleistungsserver prüft der Verwaltungsserver
die Dienstleistungsserver-Adresse 1003 in
der Dienstleistungsserver-Ablaufplantabelle 100, und falls
erforderlich kann der Server den Server starten.
-
Wenn
bei der vorstehenden Ausführungsform
Anfragen, die eine erwartete Anzahl in dem vom Verwaltungsserver 5 erstellten
Dienstleistungsserver-Ablaufplan überschreiten, bei der Lastausgleichseinrichtung 4 ankommen,
meldet die Lastausgleichseinrichtung 4 einen Fehler an
das Terminal 1 zurück, wie
in den Schritten S2003 und S2011 in 5 gezeigt,
um dadurch die Dienstqualität
in dem vorbereiteten Dienstleistungsserverbereich aufrechtzuerhalten.
-
Wenn
Anfragen, die die erwartete Anzahl in dem Dienstleistungsserver-Ablaufplan überschreiten,
bei der Lastausgleichseinrichtung 4 ankommen, kann die
Lastausgleichseinrichtung 4 andererseits einen Zuteilungsziel-Dienstleistungsserver
hinzufügen,
und die Anfrage kann auch an den hinzugefügten Dienstleistungsserver
zugeteilt werden, um so die Dienstqualität aufrechtzuerhalten.
-
11 zeigt
ein Ablaufdiagramm zur Erläuterung
einer Anfragezuteilungsfunktion, die realisiert wird, wenn der Prozessor 40 in
der Lastausgleichseinrichtung 4 das Last ausgleichs-Steuerungsmodul 421 nach
der Ausführungsform
ausführt.
-
Die
Anfragezuteilungsoperation nach der Ausführungsform in 11 ist ähnlich der
in 5, außer
dass der Verbindungssitzungszähler 704 für alle Dienstleistungsserver 7 die
Verbindungssitzungsobergrenze 703 in Schritt S2003 erreicht.
-
Wenn
der Verbindungssitzungszähler 704 für alle Zuteilungsziel-Dienstleistungsserver 7 in Schritt
S2003 in 11 die Verbindungssitzungsobergrenze 703 erreicht,
sieht die Lastausgleichseinrichtung 4 in der Zuteilungsziel-Verwaltungstabelle 70 nach
und prüft,
ob ein Dienstleistungsserver vorhanden ist oder nicht, für den die
Zuteilungszielflagge 702 nicht gesetzt ist (Schritt S2020).
Bei Vorliegen eines Dienstleistungsservers, für den die Zuteilungszielflagge 702 nicht
gesetzt ist, kann die Fortsetzung des Dienstes durch Zuteilen der
Anfrage an den Dienstleistungsserver realisiert werden.
-
Für den Zweck
des Einstellens des Dienstleistungsservers als eines der Zuteilungsziele
aktualisiert die Lastausgleichseinrichtung 4 die Zuteilungsziel-Verwaltungstabelle 70 (Schritt
S2021). Im Einzelnen setzt die Lastausgleichseinrichtung 4 die
Zuteilungszielflagge 702 für den Dienstleistungsserver, setzt
den bereits als das Zuteilungsziel für die Verbindungssitzungsobergrenze 703 des
betreffenden Dienstleistungsservers gesetzten Wert der Verbindungssitzungsobergrenze 703 des
Dienstleistungsservers und setzt außerdem den Wert des Verbindungssitzungszählers 704 für den betreffenden Dienstleistungsserver
auf 1.
-
Danach
sendet die Lastausgleichseinrichtung 4 die Anfrage an den
hinzugefügten
Dienstleistungsserver.
-
Nach
den vorstehenden Operationen wird der betreffende Dienstleistungsserver
ein Zuteilungsziel-Dienstleistungsserver.
-
Nach
der vorliegenden Ausführungsform kann,
auch wenn Anfragen, die die erwartete Anzahl überschreiten, beim Lastausgleichssystem 3 ankommen,
der Dienst fortgesetzt werden, ohne einen Fehler an das Terminal 1 zurückzumelden.
-
Bei
der Prüfung
in Schritt S2020 in 11, wenn alle Zuteilungszielflaggen 702 gesetzt
sind, sind alle Dienstleistungsserver bereits als das Zuteilungsziel
gesetzt, und daher kann die Anfrage nicht verarbeitet werden, weshalb
ein Fehler an das Terminal 1 zurückgemeldet wird.
-
Informationen über die
in Schritt S2021 erfolgte Hinzufügung
des Zuteilungsziel-Dienstleistungsservers durch die Lastausgleichseinrichtung 4 spiegeln
sich auf dem Zuteilungsziel-Dienstleistungsserver 641 im
Zugriffsprotokolldatensatz 62-K wider. Die auf dem Zuteilungsziel-Dienstleistungsserver 641 gespiegelten
Informationen über
den Dienstleistungsserver-Zähler
spiegeln sich durch die statistische Verarbeitung des Verwaltungsservers 5 und
insbesondere durch Schritt S2109 oder S2117 in 9 in
der Zugriffsdatensatztabelle 80 oder in der Zugriffsdatensatztabelle 90 für einen
bestimmten Tag wider. Somit werden die Informationen bei der Erstellung
der nächsten
Dienstleistungsserver-Ablaufplantabelle 100 effektiv benutzt.
-
Die
Beschreibung und die Zeichnungen sind daher in illustrativem und
nicht in einschränkendem Sinne
zu verstehen. Es ist jedoch klar, dass verschiedene Modifikationen
und Änderungen
daran vorgenommen werden können,
ohne vom Umfang der Erfindung abzuweichen, wie er in den Ansprüchen festgelegt
ist.