DE602004006584T2 - Lastausgleichssystem - Google Patents

Lastausgleichssystem Download PDF

Info

Publication number
DE602004006584T2
DE602004006584T2 DE602004006584T DE602004006584T DE602004006584T2 DE 602004006584 T2 DE602004006584 T2 DE 602004006584T2 DE 602004006584 T DE602004006584 T DE 602004006584T DE 602004006584 T DE602004006584 T DE 602004006584T DE 602004006584 T2 DE602004006584 T2 DE 602004006584T2
Authority
DE
Germany
Prior art keywords
access
load balancing
request
service
service server
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
DE602004006584T
Other languages
English (en)
Other versions
DE602004006584D1 (de
Inventor
Masahiko Chiyoda-ku Nakahara
Akihisa Chiyoda-ku Nagami
Fumio Chiyoda-ku Noda
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Publication of DE602004006584D1 publication Critical patent/DE602004006584D1/de
Application granted granted Critical
Publication of DE602004006584T2 publication Critical patent/DE602004006584T2/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1023Server selection for load balancing based on a hash applied to IP addresses or costs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/10015Access to distributed or replicated servers, e.g. using brokers

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer And Data Communications (AREA)

Description

  • 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.

Claims (8)

  1. Lastausgleichssystem (3) zum Zuteilen einer von einem Client-Terminal (1-1 bis 1-L) empfangenen Anfrage an einen von mehreren Dienstleistungsservern (7-1 bis 7-N) und zum Übertragen einer Antwort von dem Dienstleistungsserver zu dem Client-Terminal, wobei das System aufweist: eine Lastausgleichseinrichtung (4) zum Zuteilen der von dem Client-Terminal empfangenen Anfrage an die mehreren Dienstleistungsserver; und ein Verwaltungsmodul (5) zum Überwachen eines Betriebszustands der Lastausgleichseinrichtung, wobei: die Lastausgleichseinrichtung (4) dazu ausgelegt ist, ein Zugriffsprotokoll bezüglich der Verarbeitung der Anfrage auszugeben, das Verwaltungsmodul (5) dazu ausgelegt ist, das ausgegebene Zugriffsprotokoll zu lesen und eine statistische Operation dazu durchzuführen, dadurch gekennzeichnet, dass das Verwaltungsmodul (5) dazu ausgelegt ist, für jeden Zeitabschnitt die Anzahl von Dienstleistungsservern (7-1 bis 7-N) auf Grundlage eines Ergebnisses der statistischen Operation bezüglich der Verarbeitung der Anfrage vorauszubestimmen, die zur Verarbeitung der Anfrage notwendig sind, und einen Ablaufplan der Dienstleistungsserver einschließlich der vorausbestimmten Anzahl von Dienstleistungsservern zu erstellen, und die Lastausgleichseinrichtung (4) anzuweisen, die Anfrage einem der mehreren Dienstleistungserver zuzuteilen, die in dem Ablaufplan für den zugehörigen Zeitabschnitt vorgegeben sind.
  2. Lastausgleichssystem (3) nach Anspruch 1, wobei die Lastausgleichseinrichtung (4) dazu ausgelegt ist, zuvor ein Verfahren zum Zuteilen der Anfrage an die Dienstleistungsser ver (7-1 bis 7-N) auf Grundlage des angewiesenen Ablaufplans zu bestimmen.
  3. Lastausgleichssystem (3) nach Anspruch 1, wobei das Verwaltungsmodul (5) dazu ausgelegt ist, eine Eingabe eines bestimmten Auftragstags zu empfangen und eine für den empfangenen Auftragstag einzigartige statistische Operation für den Auftragstag durchzuführen.
  4. Lastausgleichssystem (3) nach Anspruch 3, wobei das Verwaltungsmodul (5) für den Auftragstag dazu ausgelegt ist, den Ablaufplan für den Auftragstag einschließlich eines für den Auftragstag einzigartigen Zuteilungsverfahrens auf Grundlage eines Ergebnisses der für den Auftragstag einzigartigen statischen Operation durchzuführen, und die Lastausgleichseinrichtung dazu anzuweisen, die Anfrage an die Dienstleistungsserver (7-1 bis 7-N) gemäß dem Ablaufplan für den Auftragstag zuzuteilen.
  5. Lastausgleichssystem (3) nach Anspruch 4, wobei die Lastausgleichseinrichtung (4) dazu ausgelegt ist, zuvor ein Verfahren zum Zuteilen der Anfrage an die Dienstleistungsserver (7-1 bis 7-N) für den Auftragstag auf Grundlage des angewiesenen Ablaufplans für den Auftragstag zu bestimmen.
  6. Lastausgleichssystem (3) nach Anspruch 3, wobei die Lastausgleichseinrichtung (4) dazu ausgelegt ist, die statistische Operation des Auftragstags aus dem Ergebnis der statistischen Operation zu löschen.
  7. Lastausgleichssystem (3) nach Anspruch 2, wobei bei Empfang einer Anzahl von Anfragen von den Client-Terminals (1-1 bis 1-L), die eine Anzahl von Anfragen übersteigt, die durch die in dem Ablaufplan vorbestimmte Anzahl von Dienstleistungsservern verarbeitet werden kann, die Lastausgleichseinrichtung (4) dazu ausgelegt ist, die Anfragen von den Client-Terminals zurückzuweisen.
  8. Lastausgleichssystem (3) nach Anspruch 2, wobei bei Empfang einer Anzahl von Anfragen von den Client-Terminals (1-1 bis 1-L), die eine Anzahl von Anfragen übersteigt, die durch die in dem Ablaufplan vorbestimmte Anzahl von Dienstleistungsservern verarbeitet werden kann, die Lastausgleichseinrichtung (4) dazu ausgelegt ist, den angewiesenen Ablaufplan zu ändern, einen neuen Dienstleistungsserver als ein Anfragezuteilungsziel hinzuzufügen und die Verarbeitung der Anfragen von den Client-Terminals gemäß einem geänderten Ablaufplan fortzuführen.
DE602004006584T 2003-11-06 2004-08-31 Lastausgleichssystem Active DE602004006584T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2003376383A JP2005141441A (ja) 2003-11-06 2003-11-06 負荷分散システム
JP2003376383 2003-11-06

Publications (2)

Publication Number Publication Date
DE602004006584D1 DE602004006584D1 (de) 2007-07-05
DE602004006584T2 true DE602004006584T2 (de) 2008-01-31

Family

ID=34431290

Family Applications (1)

Application Number Title Priority Date Filing Date
DE602004006584T Active DE602004006584T2 (de) 2003-11-06 2004-08-31 Lastausgleichssystem

Country Status (5)

Country Link
US (1) US20050102400A1 (de)
EP (1) EP1530341B1 (de)
JP (1) JP2005141441A (de)
CN (1) CN100379207C (de)
DE (1) DE602004006584T2 (de)

Families Citing this family (96)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8782654B2 (en) 2004-03-13 2014-07-15 Adaptive Computing Enterprises, Inc. Co-allocating a reservation spanning different compute resources types
WO2005089236A2 (en) 2004-03-13 2005-09-29 Cluster Resources, Inc. System and method for providing intelligent pre-staging of data in a compute environment
US20070266388A1 (en) 2004-06-18 2007-11-15 Cluster Resources, Inc. System and method for providing advanced reservations in a compute environment
US8176490B1 (en) 2004-08-20 2012-05-08 Adaptive Computing Enterprises, Inc. System and method of interfacing a workload manager and scheduler with an identity manager
US8271980B2 (en) 2004-11-08 2012-09-18 Adaptive Computing Enterprises, Inc. System and method of providing system jobs within a compute environment
US8260917B1 (en) * 2004-11-24 2012-09-04 At&T Mobility Ii, Llc Service manager for adaptive load shedding
US7555484B2 (en) * 2005-01-19 2009-06-30 Microsoft Corporation Load balancing based on cache content
US8863143B2 (en) 2006-03-16 2014-10-14 Adaptive Computing Enterprises, Inc. System and method for managing a hybrid compute environment
US9231886B2 (en) 2005-03-16 2016-01-05 Adaptive Computing Enterprises, Inc. Simple integration of an on-demand compute environment
ES2614751T3 (es) 2005-04-07 2017-06-01 Iii Holdings 12, Llc Acceso bajo demanda a recursos informáticos
CN100407625C (zh) * 2005-04-29 2008-07-30 华为技术有限公司 一种根据终端类型进行业务发放的方法
US20060282534A1 (en) * 2005-06-09 2006-12-14 International Business Machines Corporation Application error dampening of dynamic request distribution
US20070055771A1 (en) * 2005-07-25 2007-03-08 International Business Machines Corporation Controlling workload of a computer system through only external monitoring
US8234378B2 (en) * 2005-10-20 2012-07-31 Microsoft Corporation Load balancing in a managed execution environment
US7675854B2 (en) 2006-02-21 2010-03-09 A10 Networks, Inc. System and method for an adaptive TCP SYN cookie with time validation
US9128766B1 (en) * 2006-04-24 2015-09-08 Hewlett-Packard Development Company, L.P. Computer workload redistribution schedule
US8576712B2 (en) * 2006-05-31 2013-11-05 At&T Intellectual Property Ii, L.P. Method and apparatus for providing a reliable voice extensible markup language service
US8584199B1 (en) 2006-10-17 2013-11-12 A10 Networks, Inc. System and method to apply a packet routing policy to an application session
US8312507B2 (en) 2006-10-17 2012-11-13 A10 Networks, Inc. System and method to apply network traffic policy to an application session
US7984139B2 (en) 2006-12-22 2011-07-19 Business Objects Software Limited Apparatus and method for automating server optimization
JP4952309B2 (ja) * 2007-03-09 2012-06-13 日本電気株式会社 負荷分析システム、方法、及び、プログラム
US8201219B2 (en) * 2007-09-24 2012-06-12 Bridgewater Systems Corp. Systems and methods for server load balancing using authentication, authorization, and accounting protocols
US8041773B2 (en) 2007-09-24 2011-10-18 The Research Foundation Of State University Of New York Automatic clustering for self-organizing grids
US8914774B1 (en) 2007-11-15 2014-12-16 Appcelerator, Inc. System and method for tagging code to determine where the code runs
US8954989B1 (en) 2007-11-19 2015-02-10 Appcelerator, Inc. Flexible, event-driven JavaScript server architecture
US8260845B1 (en) 2007-11-21 2012-09-04 Appcelerator, Inc. System and method for auto-generating JavaScript proxies and meta-proxies
US8719451B1 (en) 2007-11-23 2014-05-06 Appcelerator, Inc. System and method for on-the-fly, post-processing document object model manipulation
US8566807B1 (en) 2007-11-23 2013-10-22 Appcelerator, Inc. System and method for accessibility of document object model and JavaScript by other platforms
US8756579B1 (en) 2007-12-03 2014-06-17 Appcelerator, Inc. Client-side and server-side unified validation
US8806431B1 (en) 2007-12-03 2014-08-12 Appecelerator, Inc. Aspect oriented programming
US8819539B1 (en) 2007-12-03 2014-08-26 Appcelerator, Inc. On-the-fly rewriting of uniform resource locators in a web-page
US8527860B1 (en) 2007-12-04 2013-09-03 Appcelerator, Inc. System and method for exposing the dynamic web server-side
US8938491B1 (en) * 2007-12-04 2015-01-20 Appcelerator, Inc. System and method for secure binding of client calls and server functions
US8285813B1 (en) 2007-12-05 2012-10-09 Appcelerator, Inc. System and method for emulating different user agents on a server
US8639743B1 (en) 2007-12-05 2014-01-28 Appcelerator, Inc. System and method for on-the-fly rewriting of JavaScript
US8335982B1 (en) 2007-12-05 2012-12-18 Appcelerator, Inc. System and method for binding a document object model through JavaScript callbacks
JP5082111B2 (ja) * 2008-01-31 2012-11-28 テックファーム株式会社 コンピュータシステム、サービス利用装置、制御方法、及びプログラム
US8145761B2 (en) * 2008-03-03 2012-03-27 Microsoft Corporation Load skewing for power-aware server provisioning
US8051174B2 (en) * 2008-03-03 2011-11-01 Microsoft Corporation Framework for joint analysis and design of server provisioning and load dispatching for connection-intensive server
JP2009212862A (ja) * 2008-03-04 2009-09-17 Nec Corp 輻輳制御システム、輻輳制御方法、および輻輳制御プログラム
US8291079B1 (en) 2008-06-04 2012-10-16 Appcelerator, Inc. System and method for developing, deploying, managing and monitoring a web application in a single environment
US8880678B1 (en) 2008-06-05 2014-11-04 Appcelerator, Inc. System and method for managing and monitoring a web application using multiple cloud providers
US20100036903A1 (en) * 2008-08-11 2010-02-11 Microsoft Corporation Distributed load balancer
US7596620B1 (en) 2008-11-04 2009-09-29 Aptana, Inc. System and method for developing, deploying, managing and monitoring a web application in a single environment
US8875147B2 (en) * 2008-11-12 2014-10-28 Siemens Aktiengesellschaft Scalable system and method thereof
US9116752B1 (en) * 2009-03-25 2015-08-25 8X8, Inc. Systems, methods, devices and arrangements for server load distribution
US9960967B2 (en) 2009-10-21 2018-05-01 A10 Networks, Inc. Determining an application delivery server based on geo-location information
US10877695B2 (en) 2009-10-30 2020-12-29 Iii Holdings 2, Llc Memcached server functionality in a cluster of data processing nodes
US11720290B2 (en) 2009-10-30 2023-08-08 Iii Holdings 2, Llc Memcached server functionality in a cluster of data processing nodes
US8417805B2 (en) * 2010-01-26 2013-04-09 Microsoft Corporation Controlling execution of services across servers
US9215275B2 (en) 2010-09-30 2015-12-15 A10 Networks, Inc. System and method to balance servers based on server load status
US9609052B2 (en) 2010-12-02 2017-03-28 A10 Networks, Inc. Distributing application traffic to servers based on dynamic service response time
JP5570030B2 (ja) * 2011-03-29 2014-08-13 Kddi株式会社 サービス要求受付制御方法、装置およびシステム
US9128764B2 (en) 2011-09-27 2015-09-08 Oracle International Corporation System and method for providing flexibility in configuring HTTP load balancing in a traffic director environment
US8897154B2 (en) 2011-10-24 2014-11-25 A10 Networks, Inc. Combining stateless and stateful server load balancing
US9386088B2 (en) 2011-11-29 2016-07-05 A10 Networks, Inc. Accelerating service processing using fast path TCP
US9094364B2 (en) 2011-12-23 2015-07-28 A10 Networks, Inc. Methods to manage services over a service gateway
US10044582B2 (en) 2012-01-28 2018-08-07 A10 Networks, Inc. Generating secure name records
JPWO2013129061A1 (ja) * 2012-02-28 2015-07-30 日本電気株式会社 同時接続数制御システム、同時接続数制御サーバ、同時接続数制御方法および同時接続数制御プログラム
US8782221B2 (en) 2012-07-05 2014-07-15 A10 Networks, Inc. Method to allocate buffer for TCP proxy session based on dynamic network conditions
US9465648B2 (en) * 2012-07-31 2016-10-11 Hewlett Packard Enterprise Development Lp Distributed transaction processing through commit messages sent to a downstream neighbor
US10002141B2 (en) 2012-09-25 2018-06-19 A10 Networks, Inc. Distributed database in software driven networks
KR101692751B1 (ko) 2012-09-25 2017-01-04 에이10 네트워크스, 인코포레이티드 데이터망 부하 분산
US9106561B2 (en) 2012-12-06 2015-08-11 A10 Networks, Inc. Configuration of a virtual service network
US9843484B2 (en) 2012-09-25 2017-12-12 A10 Networks, Inc. Graceful scaling in software driven networks
US10021174B2 (en) 2012-09-25 2018-07-10 A10 Networks, Inc. Distributing service sessions
US9338225B2 (en) 2012-12-06 2016-05-10 A10 Networks, Inc. Forwarding policies on a virtual service network
US9531846B2 (en) 2013-01-23 2016-12-27 A10 Networks, Inc. Reducing buffer usage for TCP proxy session based on delayed acknowledgement
US9900252B2 (en) 2013-03-08 2018-02-20 A10 Networks, Inc. Application delivery controller and global server load balancer
US9992107B2 (en) 2013-03-15 2018-06-05 A10 Networks, Inc. Processing data packets using a policy based network path
WO2014179753A2 (en) 2013-05-03 2014-11-06 A10 Networks, Inc. Facilitating secure network traffic by an application delivery controller
US10027761B2 (en) 2013-05-03 2018-07-17 A10 Networks, Inc. Facilitating a secure 3 party network session by a network device
JP6059603B2 (ja) * 2013-05-31 2017-01-11 富士通フロンテック株式会社 負荷分散装置、障害復旧方法、及び、プログラム
US10230770B2 (en) 2013-12-02 2019-03-12 A10 Networks, Inc. Network proxy layer for policy-based application proxies
JP6244894B2 (ja) * 2013-12-24 2017-12-13 富士通株式会社 通信システム、通信方法および呼制御サーバ装置
US9942152B2 (en) 2014-03-25 2018-04-10 A10 Networks, Inc. Forwarding data packets using a service-based forwarding policy
US9667711B2 (en) * 2014-03-26 2017-05-30 International Business Machines Corporation Load balancing of distributed services
US9942162B2 (en) 2014-03-31 2018-04-10 A10 Networks, Inc. Active application response delay time
US9906422B2 (en) 2014-05-16 2018-02-27 A10 Networks, Inc. Distributed system to determine a server's health
US9986061B2 (en) 2014-06-03 2018-05-29 A10 Networks, Inc. Programming a data network device using user defined scripts
US10129122B2 (en) 2014-06-03 2018-11-13 A10 Networks, Inc. User defined objects for network devices
US9992229B2 (en) 2014-06-03 2018-06-05 A10 Networks, Inc. Programming a data network device using user defined scripts with licenses
JP6481299B2 (ja) * 2014-09-12 2019-03-13 日本電気株式会社 監視装置、サーバ、監視システム、監視方法および監視プログラム
CN105991687B (zh) 2015-02-03 2019-09-17 阿里巴巴集团控股有限公司 一种服务管理方法和装置
US10581976B2 (en) 2015-08-12 2020-03-03 A10 Networks, Inc. Transmission control of protocol state exchange for dynamic stateful service insertion
US10243791B2 (en) 2015-08-13 2019-03-26 A10 Networks, Inc. Automated adjustment of subscriber policies
CN105554049B (zh) * 2015-08-14 2018-12-25 广州爱九游信息技术有限公司 分布式业务量控制方法和装置
JP6225960B2 (ja) * 2015-08-18 2017-11-08 コニカミノルタ株式会社 ネットワークシステム及び負荷抑制制御プログラム並びに負荷抑制制御方法
JP6148304B2 (ja) * 2015-09-29 2017-06-14 日本マイクロシステムズ株式会社 顧客管理システムおよび顧客管理プログラム
JP6630819B2 (ja) * 2015-10-19 2020-01-15 デマンドウェア インコーポレイテッド 推奨を生成し供給するスケーラブルなシステム及び方法
CN107241380B (zh) * 2016-03-29 2020-07-28 阿里巴巴集团控股有限公司 用于基于时间调整的负载均衡的方法和设备
CN106022747B (zh) * 2016-05-12 2019-09-27 苏州朗动网络科技有限公司 一种基于分布式高并发条件下的计费方法
JP2018005571A (ja) * 2016-07-01 2018-01-11 富士通株式会社 ログ取得プログラム、ログ取得装置、及びログ取得方法
JP7010096B2 (ja) * 2018-03-19 2022-01-26 株式会社リコー 情報処理システム、情報処理装置及びプログラム
US11025713B2 (en) * 2019-04-15 2021-06-01 Adobe Inc. Dynamic allocation of execution resources
CN114065274A (zh) * 2020-08-07 2022-02-18 伊姆西Ip控股有限责任公司 用于处理信息的方法、电子设备和计算机程序产品

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3003440B2 (ja) * 1993-01-19 2000-01-31 株式会社日立製作所 負荷分散制御方法および分散処理システム
US6279001B1 (en) * 1998-05-29 2001-08-21 Webspective Software, Inc. Web service
JP2001007844A (ja) * 1999-06-24 2001-01-12 Canon Inc ネットワークステータスサーバ及び情報配信システム、及びその制御方法、及びその制御プログラムを格納した記憶媒体
ATE366437T1 (de) * 1999-08-13 2007-07-15 Sun Microsystems Inc Elegante verteilung des lastausgleichs für anwendungs-server
JP2001134544A (ja) * 1999-11-09 2001-05-18 Hitachi Ltd 共通ログ生成方法及び共通ログ分析方法
JP4292693B2 (ja) * 2000-07-07 2009-07-08 株式会社日立製作所 計算機資源分割装置および資源分割方法
JP2002163241A (ja) * 2000-11-29 2002-06-07 Ntt Data Corp クライアントサーバシステム
US7296268B2 (en) * 2000-12-18 2007-11-13 Microsoft Corporation Dynamic monitor and controller of availability of a load-balancing cluster
KR100405054B1 (ko) * 2001-04-06 2003-11-07 에스엔유 프리시젼 주식회사 통신 품질 정보 수집 방법과 이를 내장한 컴퓨터가 판독가능한 기록 매체와 이를 이용한 통신 품질 분석 시스템및 그 방법
JP2003058499A (ja) * 2001-08-10 2003-02-28 Fujitsu Ltd 負荷を管理するサーバ、プログラム、および媒体
US20030120593A1 (en) * 2001-08-15 2003-06-26 Visa U.S.A. Method and system for delivering multiple services electronically to customers via a centralized portal architecture
US7328259B2 (en) * 2002-11-08 2008-02-05 Symantec Operating Corporation Systems and methods for policy-based application management
US7350186B2 (en) * 2003-03-10 2008-03-25 International Business Machines Corporation Methods and apparatus for managing computing deployment in presence of variable workload

Also Published As

Publication number Publication date
EP1530341A1 (de) 2005-05-11
CN1614935A (zh) 2005-05-11
US20050102400A1 (en) 2005-05-12
JP2005141441A (ja) 2005-06-02
EP1530341B1 (de) 2007-05-23
CN100379207C (zh) 2008-04-02
DE602004006584D1 (de) 2007-07-05

Similar Documents

Publication Publication Date Title
DE602004006584T2 (de) Lastausgleichssystem
DE602004004321T2 (de) Vorrichtung und Verfahren zur Echtzeitbeurteilung einer Netzverwaltungsregel
DE69626052T2 (de) System und Verfahren zum Verteilen der Belastung eines Datei-Servers
DE69030340T2 (de) Makler für die Auswahl von Rechnernetzwerkservern
DE60207539T2 (de) Resourcenzuteilung für mehrpunkt-netzwerkereignisse
EP0635784B1 (de) Multiprozessorsystem
DE19607515B4 (de) Computer mit Prozessverwalter
DE69935920T2 (de) Lastausgleich in einer netzwerkumgebung
DE60308700T2 (de) Dynamische fernkonfiguration eines webservers zur bereitstellung von kapazität auf anfrage
DE60301202T2 (de) Verfahren und vorrichtung zur verkehrssteuerung einer web-farm
DE60221019T2 (de) Verwaltung von serverbetriebsmitteln für hostanwendungen
DE602005003142T2 (de) Vorrichtung und verfahren zur unterstützung von verbindungsherstellung in einem offload der netzwerkprotokollverarbeitung
DE69926714T2 (de) Reduzierung des Ressourcenverbrauches durch ACD Systemen
DE60210733T2 (de) System und Verfahren zur Überlastregelung in Netzwerken
DE69829759T2 (de) Verteilung von nachrichten zu dienststeuereinrichtungen
DE3853122T2 (de) Vorrichtung und Verfahren zur Verbindung von einer Anwendung einer Zugriffseinrichtung für transparente Dienste mit einer entfernt aufgestellten Quelle.
DE60016283T2 (de) Arbeitsbelastungsverwaltung in einer rechnerumgebung
DE3200761A1 (de) Nichtzentrales computersystem und verfahren zur zuordnung von serviceanforderungen zu einzelnen computern
DE602005002953T2 (de) Verfahren zum überwachen einer vergleichslast für server
DE602004008202T2 (de) Verfahren und Vorrichtung für Verzeichnis ermöglichte Netzwerkdienste
DE112011103498T5 (de) Verhaltensgestützte Client-Auswahl für unterschiedliche Behandlung
DE10247164A1 (de) Verfahren und Vorrichtung für eine Netzwerkbandbreitenoptimierung
DE112005001995B4 (de) Computeranordnung und Verfahren zum Anbieten von Diensten für Benutzer über ein Netzwerk
DE202016009092U1 (de) System zum Ausgleichen von Speicherdatenverkehr in konvergierten Netzwerken
DE60215723T2 (de) Netzwerküberwachungssystem, Datenmengenzählverfahren und Computerprogramm zur Verwendung im System

Legal Events

Date Code Title Description
8364 No opposition during term of opposition