-
Die
vorliegende Erfindung bezieht sich auf ein Verfahren zur Erzeugung
von dynamischen Webseiten mit einer endlichen Anzahl an Content-Elementen,
welche Webseiten in Abhängigkeit von
Benutzerinteraktionen und/oder von anderen variierenden Kriterien
generiert und anfragenden Benutzern zur Verfügung gestellt werden, gemäß dem Oberbegriff
des Anspruchs 1.
-
Der
Daten- bzw. Informationsaustausch innerhalb kommerziell oder privat
genutzter Kommunikationsnetzwerke wie etwa dem Internet oder diverser
Mobilfunksysteme hat innerhalb der letzten Jahre rasant an Bedeutung
gewonnen. Die steigende Nachfrage nach digital verfügbaren Inhalten
und die Vielfalt an möglichen
Applikationen hat vielen Anbietern ein neues Tätigkeitsfeld in der Verwaltung
und der Bereitstellung solcher Inhalte, insbesondere, aber nicht
nur in Form von medienspezifischen Daten eröffnet.
-
Diese
zentral oder dezentral auf einem geeigneten Speichermedium bzw.
einer Datenbank gespeicherten Daten werden vom jeweiligen Anbieter einem
allgemeinen oder ausgewählten
Kreis von Benutzern zum Download bereitgestellt, können also angefordert
und kostenpflichtig oder kostenfrei an eine Endnutzereinheit übertragen
werden.
-
Die
vom Anbieter bereitgestellten Daten werden hierbei mit tels eines
Servers, also eines auf einem Computer/Host in stallierten, programmgesteuerten
Prozesses verwaltet und ver sendet. Der Server besitzt die Aufgabe,
Anfragen und Aufträge
nach digitalen Inhalten seitens der Benutzer bzw. deren End geräten zu koordinieren
und abzuwickeln.
-
Allgemein
bekannt ist die Möglichkeit,
im Internet von einem Anbieter bereitgestellte Webseiten, also in
der Regel aus Bildern und Text bestehende Informationen, mittels
eines ge eigneten Endgerätes, z.B.
einem Stand-PC oder einem Laptop, anzufragen und vom Server „downzuloaden". Hierzu muss am Endgerät ein „Client-Programm" (z.B. Webbrowser, Newsreader,
IRC-Client) installiert sein, mit welchem der Server kommunizieren
kann.
-
Die Übertragung
der angefragten Webseiten erfolgt in bekannter Weise mittels drahtloser
oder leitungsgebundener Kommunikation, auf welche an dieser Stelle
nicht näher
eingegangen wird.
-
Im
Gegensatz zu sogenannten „statischen" Webseiten, deren
Daten auf dem Server abgelegt sind und im Anfragefalle in simpler
Weise unverändert
auf das Endgerät
des Anfragenden kopiert werden, erfolgt bei sogenannten „dynamischen" Webseiten eine flexible
Generierung des eigentlichen Inhalts der angeforderten Webseite
nach Maßgabe
aktueller (Anzeige-)Kriterien. Dieser Inhalt der dynamischen Webseite
setzt sich aus mehreren Fraktionen, sogenannten Content-Elementen zusammen,
welche aus diversen Speichermedien bzw. Datenbanken aktuell zusammengetragen
und serverseitig miteinander kombiniert werden. Im Zusammenhang
solcherart dynamisch am Server erzeugter Webseiten spricht man auch
von „Servlets" oder „Server
Pages".
-
Bei
den erwähnten
Kriterien, welche der Erzeugung des eigentlichen Inhalts der angeforderten dynamischen
Webseite zugrundeliegen, kann es sich beispielsweise um Benutzeraktionen
wie z.B. die Eingabe eines Suchbegriffs in einer Suchmaschine oder eine
Anzahl selektiv eingegebener Abfrageparameter handeln. Die Erzeugung
einer dynamischen Webseite ist auch dann sinnvoll, wenn in der angefragten
sehr aktuelle Informationen wie etwa Wetterberichte, Verkehrsinformationen
oder Börsenkurse enthalten
sein sollen.
-
Technisch
wird die Zusammenstellung der dynamischen Webseite zumeist in der
Weise realisiert, dass der Webserver ein für ebendiesen Zweck entwickeltes
Programm ausführt,
welches die für
die Generierung der dynamischen Webseite erforderlichen Daten/Content-Elemente
z.B. aus Datenbanken oder diversen Speichermedien ausliest und ein HTML-Dokument
erstellt, welches in der Folge vom Server an ein Client-Programm
des Benutzers übertragen
und an einer geeigneten Ausgabeeinheit des Endgerätes ausgegeben
wird.
-
Alternativ
dazu kann auch ein speziell für
die Erzeugung von dynamischen Webseiten eingesetzter Server (Servlet
Engine) zum Einsatz kommen.
-
Da
die Größe der einzelnen
Content-Elemente mitunter beträchtlich
ist und jeweils einige MByte ausmachen kann, werden die Ressourcen des
Servers oft sehr belastet. Insbesondere im Falle einer häufigen Zugriffsfrequenz
wird das Antwort- und
Kommunikationsverhalten des eingesetzten Servers deutlich gebremst,
was einen verzögerten Download
der gewünschten
Webseiten und somit längere
Wartezeiten auf Seiten der Endgeräte zur Folge hat.
-
Der
vorliegenden Erfindung liegt daher die Aufgabe zugrunde, ein Verfahren
zur zur Erzeugung von dynamischen Webseiten bereitzustellen, welches
sich durch eine verbesserte Leistungsfähigkeit auszeichnet und eine
optimierte serverseitige Bereitstellung der vom Benutzer angefragten
dynamischen Webseiten ermöglicht.
-
Erfindungsgemäß werden
diese Ziele durch ein Verfahren mit den kennzeichnenden Merkmalen des
Anspruchs 1 erreicht.
-
In
einem gattungsgemäßen Verfahren
werden dynamische Webseiten mit einer endlichen Anzahl an Content-Elementen
welche in Abhängigkeit von
Benutzerinteraktionen und/oder von anderen variierenden Kriterien
generiert und anfragenden Benutzern zur Verfügung gestellt.
-
Erfindungsgemäß wird eine
Optimierung dieses Vorgangs in der Weise erzielt, dass nach dem Anfragen
einer dynamischen Webseite durch einen Benutzer über ein Client-Programm ein
erster Server kontaktiert wird, welcher die Kriterien für die Erzeugung
der dynamischen Webseite auswertet und mindestens ein weiterer Server
vorgesehen ist, auf welchem sämtliche
aus einer Kombination der Content-Elemente dynamisch herstellbaren
Webseiten statisch gespeichert sind. Hierbei ist jeder dieser Webseiten
eine Identitätskennung
zugeordnet, wobei der erste Server als Ergebnis seiner Auswertung
eine Zuordnungskennung generiert, die einer der Identitätskennungen
entspricht. Die eingesetzten Server können in üblicher Weise mit einer beliebigen
Anzahl untereinander vernetzter Speichermedien bzw. Datenbanken
assoziiert sein.
-
Indem
der mit einer Benutzeranfrage beauftragte Server also nicht mehr
mit der mitunter sehr aufwändigen
Zusammenstellung von einzelnen Content-Elementen belastet wird,
sondern bereits gezielt auf eine an einem anderen Server gespeicherte,
kriterienadäquat
aufbereitete Webseite zugreifen und diese dem anfragenden Benutzer
vermitteln kann, wird eine deutlich gesteigerte Performance der
Server-Endgeräte-Interaktion
ermöglicht.
-
Gemäß den kennzeichnenden
Merkmalen des Anspruchs 2 wird die zufolge der Kriterienauswertung
generierte Zuordnungskennung dem Client-Programm übermittelt.
-
In
welcher Weise das Endgerät
bzw. das Client-Programm in der Folge zur angefragten (statisch gespeicherten)
dynamischen Webseite gelangt und diese dem Benutzer präsentieren
kann, ist abhängig von
der Systemarchitektur des jeweiligen Kommunikationsnetzwerkes und
den Fähigkeiten
des Client-Programms.
-
Gemäß den kennzeichnenden
Merkmalen des Anspruchs 3 wird etwa die Zuordnungskennung vor deren Übermittlung
an das Client-Programm
um die Adresse des weiteren Servers erweitert und ermöglicht somit
einen unmittelbaren Zugang zu diesem die statisch gespeicherten,
dynamischen Webseiten liefernden Server. Die Kontaktierung des weiteren
Servers durch das Client-Programm
nach erfolgter Übermittlung
der Zuordnungskennung und die Übertragung
der Daten für
jene statisch gespeicherten, dynamischen Webseiten an das Client-Programm
gemäß Anspruch
4 kann jedoch bei geeigneter Konfiguration des Client-Programms auch ausgeführt werden,
ohne dass die Zuordnungskennung serverseitig um die Adresse des
weiteren Servers erweitert wurde. Dies kann etwa der Fall sein,
wenn dem Client-Programm
die Adresse des die statisch gespeicherten, dynamischen Webseiten übertragenden
weiteren Servers bereits bekannt ist, wobei die aktuelle Adresse
des weiteren Servers für
das Client-Programm updatebar sein kann.
-
Die
angefragten Content-Inhalte bzw. die statisch gespeicherten, dynamisch
erzeugten Webseite können
dem Benutzer unmittelbar zugänglich gemacht
werden, indem es sich bei der Identitätskennung gemäß den kennzeichnenden
Merkmalen des Anspruchs 5 um URLs, also um virtuelle Adressen, deren
Kenntnis einen direkten Zugang zu deren Inhalt ermöglicht,
handelt.
-
Um
die Fähigkeiten
des erfindungsgemäß vorgeschlagenen
Verfahrens hinsichtlich der erzielbaren Geschwindigkeit voll zur
Geltung zu bringen, ist es gemäß den kennzeichnenden
Merkmalen des Anspruchs 6 vorgesehen, dass es sich bei dem ersten
Server um einen speziell für
die Erzeugung dynamischer Webseiten geeigneten Server handelt, während beim
weiteren Server gemäß den kennzeichnenden
Merkmalen des Anspruchs 7 ein speziell für die effiziente Übertragung
von statischen Webseiten geeigneten Server, vorzugsweise ein Webserver
Einsatz findet.
-
Um
ein hinsichtlich lokaler und zeitlicher Nutzungsfrequenz optimiertes
Netzwerk bereitzustellen und das erfindungsgemäße noch weiter zu beschleunigen,
kann es mitunter vorteilhaft sein, dass die Anzahl sämtlicher
statisch gespeicherter, dy namischer Webseiten gemäß den kennzeichnenden
Merkmalen des Anspruchs 8 auf mehrere weitere Server aufgeteilt
ist.
-
Die
Erfindung wird nun anhand von Ausführungsbeispielen näher erläutert.
-
Dabei
zeigt:
-
1 eine
schematische Darstellung des erfindungsgemäßen Verfahrens
-
2 eine
schematische Darstellung einer mehrere Content-Elemente beinhaltenden
dynamischen Webseite
-
3 eine
schematische Darstellung einer mehrere Content-Elemente beinhaltenden
dynamischen Webseite
-
4 eine
schematische Darstellung einer ein einziges Content-Element beinhaltenden
dynamischen Webseite
-
Die
vorliegende Erfindung sei anhand eines Einsatzes in einer klassischen
Internet-Architektur beschrieben, welche sich ein mit einem geeigneten Endgerät ausgestatteter
Benutzer zunutze macht, um gewünschte
Informationen von diese Informationen verwaltenden Servern abzurufen.
-
In 1 ist
die erfindungsgemäße Interaktion
zwischen einem Client-Programm Cl eines nicht dargestellten Endgerätes, einem
ersten Server S1 und einem weiteren Server
S2 , welcher mit
einem Speichermedium M bzw. einer Datenbank verlinkt ist, schematisch
dargestellt.
-
Wird
vom Benutzer eine bestimmte Webseite mittels des Client-Programms Cl (Webbrowser)
angefragt, so wird diese Anfrage beispielsweise über das HTTP-Protokoll zum
Server S1 geschickt, der die angefragte
Webseite analysiert. Anhand der Dateiendung erkennt der Server S1, ob es sich bei der jeweils angefragten
Webseite um eine statische Webseite handelt, welche keines weiteren
Aufwandes zur Generierung bedarf und un mittelbar an das anfragende Endgerät übertragen
werden kann, oder ob es sich sich bei der angefragten Webseite um
eine dynamische Webseite handelt und die Bereitsstellung einer aus
einer definierten Anzahl an Content-Elementen C1,
..., Cn bestehenden Webseite erforderlich
ist. Die Anzahl und Anordnung der Content-Elemente C1,
..., Cn auf der dynamischen Webseite ist
abhängig
von verschiedenen Kriterien wie etwa Benutzereingaben (z.B. parametrische
Suchanfrage) oder auch der automatisierten Bereitstellung aktueller,
auf der angefragten Webseite präsentierter
Inhalte, z.B. eines Wetterberichts.
-
Gemäß dem Stand
der Technik ist beispielsweise anhand der Dateiendung *.php oder
*.phtml erkennbar, dass es sich um eine dynamische Webseite handelt.
Die Erzeugung der dynamischen Webseite kann nun entweder mittels
eines speziellen dafür ausgelegten
Servers erfolgen, beispielsweise einem Tomcat Server), der sich
die zur Darstellung der dynamischen Webseite erforderlichen Content-Elemente
C1, ..., Cn von
unterschiedlichen Speicherplätzen
lädt oder
aber auf einem Webserver, der eigentlich nicht zur Herstellung von
dynamischen Webseiten optimiert ist, läuft ein Programm zur Herstellung der
dynamischen Webseiten. Beide Varianten sind ressourcenaufwändig.
-
Um
nun nicht in der üblichen
Weise das Speichermedium M bzw. die Datenbank nach entsprechenden
Content-Elementen C1, ...,Cn mittels
eines Scriptsprachen-Programms durchsuchen zu müssen, diese zu kombinieren
und anschließend
in ein vorgegebenes HTML-Raster einzubetten zu müssen, ist es erfindungsgemäß vorgesehen,
dass zusätzlich
zum ersten Server S1 ein weiterer, mit einem Speichermedium
M bzw. einer Datenbank assoziierter Server S2 vorgesehen
ist, auf welchem sämtliche aus
einer Kombination der Content-Elemente C1,
..., Cn dynamisch herstellbaren Webseiten
WD1, ..., WDi statisch
gespeichert sind. Hierbei ist jeder dieser Webseiten WD1,
..., WDi eine beispielweise aus einer Buchstaben-
und/oder Zahlenkombination bestehende Identitätskennung IK1,
..., IKi zugeordnet.
-
Es
wird also ein Pool sämtlicher
möglicher Kombinationen
der Content-Elemente C1, ..., Cn erstellt.
Hierbei werden aus einer Webseite mit einer fiktiv möglichen
Anzahl von n Content-Elementen
2n Webseiten erzeugt, welche jeweils eine
für die
spezifische Anordnung der enthaltenen Content-Elemente C1, ..., Cn eindeutige
Identitätskennung
IK1, ..., IKi besitzen.
Für eine
in 2 dargestellte Webseite WD1 mit
einer Anzahl von 7 möglichen
Content-Elementen C1, ..., C7 bedeutet
dies, dass 27 Kombinationsmöglichkeiten
der Content-Elemente C1, ..., C7 bestehen, welche
allesamt auf dem Speichermedium M bzw. einer Datenbank abzuspeichern
sind.
-
Der
erste Server S1 generiert als Ergebnis seiner
Kriterien-Auswertung
eine Zuordnungskennung ZK, die einem der Identitätskennungen IK1,
..., IKi entspricht und somit dem von der
Zuordnungskennung ZK in Kenntnis gesetzten Benutzer bzw. dessen Client-Programm
Cl einen direkten Pfad zur gewünschten
Webseite bietet. Zu diesem Zweck wird die Zuordnungskennung ZK vor
deren Übermittlung an
das Client-Programm um die Adresse des weiteren Servers erweitert.
-
In
einer bevorzugten Ausführungsvariante handelt
es sich bei den Identitätskennungen
IK1, ..., IKi und
den Zuordnungskennungen ZK um URLs.
-
In
den 2 bis 4 sind in beispielhafter Weise
Webseiten ND1, WD2 und
WD3 schematisch dargestellt, welche jeweils
eine definierte Kombination an Content-Elementen C1,
..., C7 beinhalten.
-
Während die
in 2 dargestellte Webseite WD1 sämtliche
für deren
Layout verfügbare
Content-Elemente C1, C2,
C3, C4, C5, C6 und C7 beinhaltet, so umfasst die in 3 dargestellte
Webseite WD2 lediglich die in mittiger Position
der angeordneten Content-Elemente C1 C1 ..., C7 und die
in 4 dargestellte Webseite WD3 sogar
lediglich ein einziges, zentral angeordnetes Content-Element C5.
-
Bei
dem Content-Element C2 kann es sich beispielsweise
um eine als animierte Pixelgraphik in die jeweilige Webseite eingebettete
meteorologische Satllitenaufnahme von Mitteleuropa handeln, als
darunter angeordnetes Content-Element C5 kann
etwa ein aktuelles Panoramafoto eines vom Benutzer zu Beginn seiner
Suchanfrage manuell eingegebenen Ortes, z.B. einer Schipiste vorgesehen
sein und als zu unterst angeordnetes Content-Element C7 etwa ein
aktueller Screenshot einer Webcamera, welche an einer zur unter
dem Content-Element C5 dargestellten Schipiste
führenden
Autobahn installiert ist.
-
Bei
den gemäß 2 links
und rechts angeordneten Content-Elementen
C1, C3, C4 und C6 kann es
sich um erläuternden
Text zu den voranstehend beschriebenen graphischen Content-Elementen C2, C5 und C7 handeln, so etwa um eine Interpretation des
meteorologischen Satellitenbildes.
-
Ob
die auf Seiten vom weiteren Server S2 gespeicherten
Webseiten WD1, ..., WDi laufend
administriert bzw. aktualisiert werden müssen oder über längere Zeit Gültigkeit
haben, wird von der Art der jeweils bereitgestellten Content-Elemente
C1, ..., Cn abhängen.
-
Bei
den Content-Elementen C1, ..., Cn kann es sich grundsätzlich um Datensätze jedweder
Art handeln, also neben den geschilderten Graphik- und Text-Dateien,
auch um Audiodateien, Videodateien, Vektordateien, Multimedia-Formate
etc.
-
Indem
für die
beschriebenen Aufgaben jeweils spezifische Servertypen eingesetzt
werden, kann die System-Performance weiter gesteigert werden. Beispielsweise
kann als erster Server S1 ein speziell für die Erzeugung
dynamischer Webseiten geeigneten Server, zum Beispiel ein Tomcat-Server eingestzt
werden, während
beim weiteren Server S2 ein speziell für die effiziente Übertragung
von statischen Webseiten geeigneter Webserver Einsatz finden kann,
zum Beispiel ein Apache Server.
-
Die
statisch gespeicherten, dynamischen Webseiten WD1,
..., WDi können auch in Gruppen aufgeteilt
und als solche auf mehreren weiteren Servern S2 abgelegt
sein. Auf diese Weise können
statisch gespeicherte, dynamische Webseiten WD1,
..., WDi mit solchen Content-Elemente-Kombination, welche
statistisch gesehen eine sehr geringe Nutzungsfrequenz haben, aus
von Benutzeranfragen stark frequentierten Bereichen des Netzwerks
ausgelagert werden, was wiederum eine Beschleunigung der Benutzer-Server-Interaktion
mit sich bringt.
-
Es
sei angemerkt, dass der Einsatz der vorliegenden Erfindung nicht
nur die beschriebene Internet-Kommunikation zwischen einem PC und
einem Server betrifft, sondern auch vielfältigste Applikationen innerhalb
drahtloser oder leitungsgebundener Kommunikationsnetzwerke aller
Art, so etwa auch Mobilfunk-Applikationen.
Insbesondere können
auch Kommunikationsstandards bzw. -protokolle wie GSM, UMTS oder
Bluetooth eingesetzt werden. Als kommunizierende Endgeräte können beispielsweise auch
verschiedenste Handheld-Geräte
wie etwa PDAs oder „Smartphones" dienen.