| |
|
SOFTWARE |
|
|
|
|
|
1. CGI, Perl, PHP, CFML, ASP, JSP, Java ?
Wie werden serverseitige Programmmodule erstellt und im Webserver
eingebunden?
Verschiedene Technologien stehen zur Verfügung, jede hat ihre Vor-
und Nachteile.
CGI
Perl | Eine der frühesten und immer noch benutzten Technikenstellen per CGI-Schnittstelle (Common Gateway Interface)aufgerufene Perl-Skripte (Practical Extraction and ReportLanguage) dar. Für kleine Anwendung ist dies der einfachsteWeg und wird von jedem Webserver unterstützt. Bei größerenAnwendung kann es Performance-Probleme durch zu hohen Ressourcen-Verbrauch geben, da für jede Anfrage ein eigener
Prozess gestartet wird. Dies lässt sich weitgehend mit
FastCGI vermeiden, aber dann wird Multithreading
komplizierter. |
|
PHP
LAMP |
Mehr Geschwindigkeit, komfortablere Bibliotheken und
wesentlich bessere Möglichkeiten zur Datenbankanbindung
bietet PHP (PHP Hypertext Preprocessor). Besonders in der
Open-Source-Bewegung findet die LAMP-Kombination große
Verbreitung (Linux-Apache-MySQL-PHP). PHP ist eher leicht zu
erlernen. Für bestimmte Projekte können einige Merkmale in
dieser professionellen, aber sehr spezialisierten Sprache
fehlen, wie zum Beispiel einfachere Kommunikation mit
anderen Applikationen, bessere Debugging-Möglichkeiten und
nicht-requestgetriebe Hintergrundprozesse für
Application-Server-Dienste. Zu bedenken ist, das die
Programmiersprache nicht für andere Anwendungen eingesetzt
werden kann. |
|
CFML
ColdFusion |
Anders als CGI, Perl und PHP, die sehr preiswert oder
kostenlos zu haben sind, ist CFML (ColdFusion Markup
Language) eine kommerzielle Skriptsprache für den
ColdFusion Application Server von Macromedia. Während Perl
und PHP an C erinnern, zeigt CFML Verwandschaft zu HTML und
ist deshalb eher bei Nicht-Programmierern und Gestaltern
beliebt, die ihre Webseiten mit Tools bearbeiten wollen. |
|
MS-ASP
VBScript
ActiveX |
Eine bekannte Technik zur Einbettung von serverseitig
ausgeführten Skripten in HTML-Seiten ist das von Microsoft
propagierte ASP (Active Server Pages, nicht zu verwechseln
mit Application Service Providing). Das frühere ASP konnte
im Prinzip mit verschiedenen Skriptsprachen kombiniert
werden, wurde aber fast nur mit VBScript verwendet. Fast
alle Beispiele und Dokumentationen setzten VBScript voraus.
Da VBScript alleine nicht mächtig genug ist, wurde
komplexerer Code in COM- oder ActiveX-Komponenten verlagert.
Die Microsoft-ActiveX-Library ist allerdings nur unter
Windows mit dem Microsoft Internet Information Server (IIS)
verfügbar.
Im Nachfolger, dem neuen ASP.NET, kommt nicht mehr VBScript
zur Anwendung. Es können theoretisch alle
.NET-Programmiersprachen eingesetzt werden. In den üblichen
Dokumentationen und Beispielen wird VB.NET (Visual Basic
.NET) und C# verwendet. ASP.NET ist bislang auf Windows
2000/XP beschränkt. |
|
Java
JSP
J2EE |
JSP (JavaServer Pages) hat Ähnlichkeiten zu MS-ASP und
ASP.NET und bietet vergleichbare Features. Auch bei JSP
besteht der Code aus normalem HTML-Code mit eingebetteten
durch "<% ... %>" abgetrennten Code-Snippets
(Schnipseln). Aber bei JSP enthalten diese Snippets
Java-Code. Der gesamte Java-Sprachumfang samt Bibliotheken,
JavaBeans- und EJB-/J2EE-Komponenten steht zur Verfügung.
Java zählt zu den modernsten, gut strukturierten und auf
heutige Belange zugeschnittenen Programmiersprachen mit
guter Netzwerkfähigkeit sowie komfortabler und schneller
Datenbankanbindung. Einfache Anwendungen profitieren von der
umfangreichen standardisierten Laufzeitumgebung und können
z.B. mit dem kostenlosen Tomcat-Server realisiert werden.
Große Anwendungen können skaliert und um verteilte
Komponenten, Enterprise-Funktionen, Transaktionsmanagement,
Sicherheitsmechanismen, Load Balancing und Fail-Over-Schutz
erweitert werden. JSP-Anwendungen laufen unverändert z.B.
sowohl unter Linux + Apache als auch Windows + IIS sowie auf
beliebigen Web Application Servern. Alle größeren
Application Server bieten mittlerweile Java/JSP/J2EE-Unterstützung.
Java ist besonders bei den großen Software-Herstellern (wie
IBM, Oracle, SAP) zur bevorzugten Programmiersprache
geworden. |
|
|
|
|
|
|