Sunday, December 10, 2006
[OOP 2007] Das (vor)letzte Wort
Ganz klar gibt es immer noch und zurecht Befürworter von HTTP, genauso wie es wohl noch Proponenten pro IPv4 und contra IPv6 geben soll. Als OMG-Vertreter hab ich noch genau in Erinnerung wie wir mehrere Runden durch die IIOP-Standardisierung gedreht haben. Damals waren übrigens viele der Meinung, CORBA's IIOP könne sich als weiteres Internet-Protokoll etablieren. Aber das ist Geschichte. Dass HTTP lose Kopplung offeriert, gilt als Segen und Fluch. Probleme mit der Zustandslosigkeit von HTTP sind u.a. laut diverser Quellen im Internet:
- mangelnde Sicherheit (z.B. Man in the Middle Attacks)
- Performanzprobleme
Gerade bei verbindungsorientierter Middleware, die auf Basis von HTTP betrieben werden soll, kommen die diversen Nachteile zum Tragen wie sich unschwer beweisen lässt. Stellt man Perfomanzanalysen gegenüber, die HTTP (selbst mit binärer Kodierung) mit TCP/IP basierenden Implementierungen vergleichen (z.B. CORBA IIOP) so werden Performanznachteile von HTTP in der Größenordnung von 30% bis teilweise mehr als 300% gemessen. Wir haben jedenfalls in Projekten derartige Vergleichsbenchmarks genutzt, um einen Vergleich zu erhalten. Diese Performanznachteile sind aber oft gar nicht relevant, weil es eben bei Enterprise-Anwendungen nicht immer auf jede Sekunde ankommt.
Vorteile von HTTP sind ganz klar die lose Kopplung und die Leichtgewichtigkeit möglicher Implementierungen. Nachteile entstehend demenentsprechend für alle Web-Anwendungen, die enger gekoppelt interagieren müssen.
Moral der Geschicht: HTTP ist für ganz bestimmte Zwecke und Einsatzgebiete entworfen. Sobald in Zukunft das ursprünglich angenommene Anforderungsprofil nicht mehr mit der Realität übereinstimmt, werden wir neue Protokolle benötigen, etwa für das Internet der Dinge. Mag natürlich sein, dass das neue Web 2.0 konforme Protokoll dann den Namen HTTP 2.0 trägt :-)