Über Maxscape.com
Maxscape.com ist dem Maxscape Web Server Framework gewidmet. Eine Einführung zu Maxscape wird vorgestellt und Informationen über Web Application Servern und Content Management Systemen seit 1998 veröffentlicht.
Über Maxscape
Maxscape ist ein Web Server Framework, das die wesentlichen Features zum Entwickeln
und Betreiben ausgefallener Websites und Webservices zur Verfügung stellt. Diverse
Programme, Komponenten und Module sind integriert, um die generischen Features
eines Application Servers, eines Content Management Systems und einer Entwicklungs-
und Integrationsumgebung zu implementieren.
-
Was ist an Maxscape besonders?
-
Mit Maxscape können Inhalte und Perl Code konsistent in einer relationalen Datenbank gespeichert
werden. Das Konzept Inhalte mit (eingebettetem) Code in einer Datenbank, anstelle eines Dateisystems,
zu speichern, hat einige Vorteile gegenüber einem dateibasiertem System.
Das Maxscape Datenmodel bildet die Struktur einer Website auf einen Inhaltebaum von Knoten
der Typen Category, Page, Template, Link oder Script ab. Ein Knoten wird anhand seines Pfades,
der durch seine Kategorie und Knotennamen definiert ist, adressiert. Jeder Knoten hat
Eigenschaften und kann Knotenelemente beinhalten. Kategorieelemente können an Unterkategorien
vererbt und Knotenelement beliebig importiert werden.
Die Datenbankelemente enthalten den Großteil der Inhalte einer Website. Datenbankelemente,
ähnlich wie HTML-Tags bestehen aus einem Namen, Attributen, Inhalt, Sprache, usw. Da der Perl
Interpreter das Einbetten von Funktionsaufrufen von Objekten in Zeichenfolgen und in einer
Datenbank gespeicherten Code ausführen kann, wird der Perl interpreter selbst für Server-
und Anwendungsprogrammierung verwendet.
Innerhalb der Hauptschleifen des Laufzeitsystems werden die Knoten des Baums aus den
Anwendungsserver Datenbanken geholt und die zugehörigen Callbacks ausgeführt, um die
Website, on the fly, zu generieren.
Das Laufzeitsystem stellt über das Maxscape Server API mehrere Objekte, der Klassen
WebServer, CGI, Context, Page, Form, Table, usw. Klassen, zur Verwendung in
Applikationen zur Verfügung.
-
Entwicklungs- and Integrationsumgebung
-
Die Entwicklungsumgebung, die Integrationskette und der Distributionsbau besteht aus
einer Sammlung von Programmen, Skripten, Tools und die Browseroberflächen zur Verwaltung
des Dateisystems und der Datenbank.
- Generische Web Server Plattform
-
Die Webserver Platform umfasst einen vorkompilierten Apache Server, einen speziell
kompilierten Perl Interpreter mit vielen hilfreichen CPAN Modulen und eine
vorkonfigurierte Mysql Datenbank.
Der Apache ist mit Fast-CGI, Mod-Perl und Openssl kompiliert. Anstelle des Apache kann auch
Maxdaemon
eingesetzt werden, der aber nicht Teil der Platformdistribution ist.
Der Perl Interpreter ist speziell auf die Verwendung mit Maxscape zugeschnitten,
beispielsweise um die Quellen auf einem Produktionssystem zu verschlüsseln.
Eine sinnvolle Teilmenge von CPAN Paketen ist vorinstalliert.
Als Datenbank für die Content Database kann eine beliebige relationale Datenbank
eingesetzt werden, solange es für diese einen DBD/DBI Treiber gibt. Eine vorkonfigurierte
MySql Datenbank ist trotzdem Teil der Platformdistribution.
- Applikation Server Laufzeitsystem
-
Das Laufzeitsystem umfasst das Maxscape Start/Stop Skript, den HTTP Server,
die Datenbank und die (Fast-)CGI Anwendungsdämonen der konfigurierten
Applikationssserver.
Der Begriff Application Server bezeichnet alle Teile, die zur Generierung des Inhaltes
einer speziellen Website gehören. Dies sind im Wesentlichen das Hauptskript, die HTTP Server und
Maxscape Konfiguration, die CGI-Schnittstelle, die Datenbankinstanz, die Seitengenerierungsobjekte,
sowie das Design, der Inhalt und Code der Website des Anwendungsservers.
Ein Anwendungsprozess besteht aus einem Hauptskript, das die Hauptschleife des Daemons implementiert
und die erforderlichen Pakete und Module inkludiert, um die Antwort auf eine Anfrage aus der
Datenbankinstanz des Anwendungsservers zu generieren.
Das Hauptskript und die inkludierten Pakete definieren standardmäßig mehrere Objekte,
Funktionen und Variablen, um auf die Konfiguration des Anwendungsservers, die Client
Anfrage mit ihrer CGI-Umgebung, die Inhaltsgenerierungsfunktionen und die Objekten
um mit der Datenbank zu arbeiten, zugreifen zu können. An vielen Stellen der
Inhaltsgenerierungsschleife können Anwendungscallbacks definiert und eingefügt werden.
Die wichtigsten Laufzeitobjekte sind die $WebServer, $Process, $CGI, $Context, $Page, $Database,
$DatabaseTable, $PageTree und die $Filesystem Objekte. Weil die Evaluation bzw. Ausführung des
in den Datenbankelementen enthaltenen Codes im Kontext des $Page-Objekts erfolgt, kann auf diese
Objekte direkt mit ihrem Namen zugegriffen werden. Der Inhalt eines Datenbankelements kann
beispielsweise vom Typ Klartex, HTML, CSS, Javascript, Maxscript, Perl-Code und HTML mit eingebettetem
Perl-Code sein.
- Maxscape WebServer Bibliothek
-
Die generische Web Server Bibliothek implementiert die Funktionalität, die mehr oder weniger
allen Websites gemeinsam ist.
Die Bibliothek bietet eine objektorientierte, hierarchische Sicht auf die in der Content Database
und dem Dateisystem gespeicherten Inhalte und den Code. Details wie SQL Abfragen werden den
Anwendungen mittels des Web Server APIs ausgeblendet.
- Inhaltedatenbank und Datenmodell
-
Das Datenmodell bildet die hierarchische Struktur einer Website auf eine rationale Datenbank ab.
Zur Abbildung eines hierarchischen Baums auf eine rationale Datenbank sind mindestens drei
Datenbankentabellen erforderlich, um die Pfade der Knoten, ihre Eigenschaften und Attribute,
sowie ihrer Inhalte und des Codes zu speichern.
- Datenbank und Dateisystem Oberflächen
-
Maxscape stellt mehrere Web Browser Oberflächen zum Management der Inhaltedatenbank und des
Dateisystems der konfigurierten Anwendungsserver zur Verfügung.
- Geschichte und Kunden
-
Der Ursprung von Maxscape geht auf das Jahr 1992 zurück. Die Möglichkeiten des aufkommenden
Internets inspirierten die Entwicklung eines Webserver Frameworks.
Im Jahr 1997 war Maxscape die erste Plattform, die einen HTTP-Daemon, eine Datenbank,
einen Perl Interpreter mit CPAN-Paketen, die Maxscape Webserverbibliothek und das
Anwendungsserver Laufzeitsystem integrierte. Folglich war es damals einfach, Maxscape an
Kunden wie Phase 4, Vereinsbank, T-Data, GHM usw. zu verkaufen.
Im Jahr 1999 wurde aus mehreren Gründen beschlossen, sämtliche Kundenbeziehungen aufzugeben,
beispielsweise um sich ausschließlich auf die Entwicklung des Webservers selbst konzentrieren zu
können. Nun, Maxscape wird bis heute gepflegt und weiterentwickelt, nur so zum Spaß.
Im Jahr 1999 wurde entschieden, alle Kundenbeziehungen aufzugeben, um sich nur auf die Entwicklung
des Webservers konzentrieren zu können. Nun, Maxscape wird bis heute gewartet und entwickelt
und das aus Spass.
- Beispiel Websites
-
Maxscape kennenlernen
Um einen ersten Eindruck zu gewinnen wie Maxscape funktioniert, wollen Sie vielleicht
ein freies Konto anlegen. Sie können lernen Ihre eigenen Seiten zu designen und zu publizieren
und Sie können beim Projekt mitmachen, wenn Sie wollen.
Don't worry be happy, Max.
|
|