Über Maxscape.com

Maxscape.com ist dem Maxscape Web Server gewidmet. Eine Einführung wird vorgestellt und Informationen über Content Managment und Application Programming werden seit 1998 publiziert.

Was ist 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 generische Funktionalität eines Application Servers, eines Content Management Systems und einer Entwicklungs- und Integrationsumgebung zu implementieren.

Entwicklungs- and Integrationsumgebung
Maxscape wird unter UNIX, dem besten Betreibssystem für Netzwerksservers entwickelt. UNIX kommt von sich aus mit einer ganzen Welt von nützlichen Tools. Brauchbare Command Line Shells, vi, grep, diff, locate, find, make, etc. Zusätzliche Tools, namentlich CVS, GIT und RPM werden zur Entwicklung, zum Integration Build und der Distributionskette genutzt.

Ein zentrales makefile and einige Shell Scripts adaptieren die UNIX Tool Chain, um das Environment einzustellen, die vielfältigen Versionen der Programme, Komponenten, Module und des Server Dateisystems zu verwalten und nicht zuletzt, um Textstrings and Codestücke im Dateisystem und in der Datenbank zu finden.
Generische Web Server Plattform
Die Webserver Platform umfasst die HTTP(S) Dämonen, einen speziell kompilierten Perl Interpreter mit vielen hilfreichen CPAN Modulen und eine relationale Datenbank.

Der Apache ist mit Openssl, Fast-CGI and Mod-Perl kompiliert. Maxdaemon ist ein schneller, leichtgewichtiger in Perl geschriebener HTTP(S) Dämon mit drei Arten von CGI Interfacen, einer Webbrowser Oberfläche zum Managen der Websites und des Dateisystem des Hosts und ein Application Server Laufzeitsystem.

Einen eigenen, speziell kompilierten Perl Interpreter zu bauen ist empfehlenswert, um Perl an die Anforderungen eines Applikations Servers anzupassen, zum Beispiel um die Softwarequellen auf Produktionsservern zu verschlüsseln.

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 vorkompilierte MySql Datenbank ist trotzdem Teil der Distribution.

Um die Plattform zu bauen, wird ein RPM Repository mit spec Dateien verwendet, was den Build erheblich vereinfacht und reproduzierbar macht.
Standardisierte Datei Struktur
Die Einführung einer standardisierten Dateistruktur erleichtert das Management von Softwarekomonenten und Websites und macht Applikationen verschiedener Server direkt kompatibel. Jeder Applikationsserver lebt in einem eigenen Dateiunterbaum, der nach UNIX Konventionen strukturiert ist. Prozess, Server und Site spezifische Komonenten sind in eigenen Ordnern untergebracht.
Applikationserver und Laufzeitsystem
Das Laufzeitsystem verbindet alle Komponenten und implementiert die Schnittstelle zwischen Server und Applikationen. Es generiert Inhalte dynamisch aus den Content Databases bzw. dem Dateisystem innerhalb der Mainloops der Applicationsprozesse. Es stellt Applikationen Variable, Funktionen und Objekte zur Verfügung, um auf Konfigurations, Server, Client Request, u.s.w. Daten zuzugreifen und um mit der Content Database leicht arbeiten zu können. An vielen Stellen der Seitengenerierungsfunktionen können Applikationen Callbacks einfügen.
Klassen Bibliothek and Server API
Die Maxscape Klassen Bibliothek implementiert die Hauptfunktionen eines generischen Applikationsservers, zum Arbeiten mit der Content Database, der Webbrowser Oberflächen und des HTTP(S) Dämonen.

Sie bietet eine hierarchische, objektorientierte Sicht auf die in der Content Database und dem Dateisystem gespeicherten Inhalte und Software. Applikationen kommunizieren über die vom Laufzeitsystem bereitgestellten Variablen, Funktionen und Objekte mit der Serversoftware.

Zur Zeit besteht sie aus ca. 88 Packages mit 1420 Methoden, 65295 Lines of Perl Code mit rudimentärer Dokumentation, wobei Code in der Datenbank der Kandidat für die Bibliothek ist, nicht einbezogen ist. Die Zahl aller Quellzeilen ist 507215.
Content Database und Datenmodel
Jede virtuelle Website hat eine eigene Content Database, um Konfigurationsdaten, Kategorien, Seiten, Templates, Elemente, Benutzerdaten, etc, sowie die Anwendungssoftware zu speichern.

Das Datenmodell bildet die hierarchische Struktur einer Website auf eine relationale Datenbank ab. Verzeichnisse werden zu Kategorien und Dateien zu Seiten. Seiten bestehen aus Seitendaten und Elementen, die in Templates eingefügt werden. Kategorien können Elemente enthalten, die an Unterbäume vererbt werden können. Templates erlauben es, Inhalte und Design zu separieren und Seitenlayouts zu verallgemeinern.

Datenbankseiten sind in Seitenelemente untergliedert, die Inhalte und Applikationssoftware enthalten. Elemente können enthalten was immer eine Datenbank speichern kann. Ein spezielles Maxscape Feature ist, dass sogar Perl Code in Elementen gespeichert werden kann, der dann vom Laufzeisystem evaluiert und ausgeführt wird. Vielen Dank Perl!
Datenbank und Dateisystem Oberflächen
Maxscape stellt mehrere Web Browser Oberflächen zur Inhaltedatenbank und dem Dateisystem der Server von Websites zur Verfügung. Auch wenn die Funktionalität und das Look & Feel definitiv verbessert werden können, sind fast alle wichtigen Funktionen zum Arbeiten mit Websites zur Verfügung.
Geschichte und Kunden
Maxscape 1.0 (1997) war die erste Plattform, die einen HTTP Dämonen (erst NSCA, CERN, dann Apache), FastCGI/ModPerl, SSL, eine Datenbank (erst Msql, dann Mysql und Oracle), eine Programmiersprache (Perl) und einen Applicationsserver integrierte und als eine relativ einfach zu installierende Distribution an Kunden wie Vereinsbank, T-Data, Phase 4, GHM ausgeliefert und verkauft wurde.
Beispiel Websites mit Maxscape
Ein Application Server ohne Applikationen ist wie eine Kommunikationssite ohne Mitglieder. Irgendwie nutzlos. Nun, hier sind einige Sites die unter Maxscape laufen.

∙ Maxscape.com - Maxscape Internet Server
∙ Maxdaemon.org - Maxdaemon HTTPD und Applikation Server
∙ Internet-Profile.com - Profile and Website Publishing
∙ Profile-Community.com - Einfache Community Site
∙ Sound-Basement.com - Sound-Basement Studio/Community
∙ Strinx.com - Ancient Showcase Community Site
∙ Rainer Jacob - Rainer Jacobs geniale Kunstwerke
∙ Delilah und Freunde - Delilahs Profil auf Sound-Basement.com
∙ Der Himmel über Berlin - Berliner Himmel zum Sonnenuntergang

Was kann Maxscape für Sie tun?

Alleinstellungsmerkmal von Maxscape ist, dass Inhalte, HTML, XML, Javascript und eingebettete Server Software (Perl) konsistent in einer relationalen Datenbank, Content Database genannt, gespeichert werden können. Das Maxscape Datenmodel bilded dann die Struktur einer Website auf die Datenbank ab, was eine hierarchische Sichtweise auf Inhalte, wie auch auf die eingebettete Applikationssoftware erlaubt.

Die Idee der Content Database entstand 1996 aus der Erfahrung, dass der Aufwand Inhalte, Design, Applikationen und Metadaten von komplexen Websites auf einem Dateisystem zu speichern erheblich grösser ist, als wenn dafür eine Datenbank verwendet wird. Anstelle unzähliger Dateien und dem damit verbundenen Verwaltungsaufwand bietet eine relationale Datenbank eine reguläre, standardisierte Struktur, die sich relativ leicht verwalten lässt.

Es ist auch eine Erfahrung, dass die Implementierung eines Datenmodells, der Benutzerschnittstellen und des Laufzeitsystems zur dynamischen Generierung von Inhalten, ein eigenes, relativ grosses Projekt ist. Einmal aufgesetzt bieten sich erstaunliche Möglichkeiten. So können zum Beispiel Inhalte vom Design separiert werden, indem man diese in verschiedenen Elementen speichert, Inhalts und Design Elemente können einfach wiederverwendet und eine ausgeklügelte Templatetechnik implementiert werden.

Ein anderes Schlüsselfeature der Content Database ist, dass neben Dokumentsprachen wie HTML, clientseitiges Javascript, auch serverseitige Software (Perl) in der Datenbank gespeichert und zur Laufzeit on-the-fly evaluiert oder ausgeführt werden kann. Serverseitige Software in der Datenbank zu speichern, bietet viele Vorteile, wie Sie später sehen werden. Zum Beispiel zum Schreiben von Dokumenten mit wenigen eingebetteten Variablen und Codeschnipseln, für kleine Codestücke die nur einmal verwendet werden und erleichtert die Implementierung von geschachtelten Seiten und Template Elementen erheblich.

Maxscape kennenlernen

Wenn Sie einen ersten Eindruck gewinnen wollen, lesen Sie das (englische) Profil und legen Sie ein Konto auf Maxscape.com für Web Designer und Entwickler, Sound-Basement.com für Musiker oder Profile-Community.com an.

Setzen Sie eine Website auf, die Sie im Internet oder für Mitglieder publizieren können. Die Oberflachen dieser Sites sind eine erste verwendbare Version für anonyme Benutzer mit eingeschränkter Funktionalität z.B. ohne direkte serverseitige Programmiermöglichkeiten. Ausserdem bieten sie eine einfache Community Lösung mit der Sie ein Profil publizieren und mit anderen Mitglieder kommunizieren und gemeinsam an Seiten arbeiten können. Für Ihr anonymes Konto brauchen Sie lediglich einen Mitgliedsnamen und ein Passwort.

Don't worry be happy, Max.

Weiter lesenSeitenanfangMitglied werdenKontaktImpressum & Datenschutz © Maxscape.com