ASPs für In-Process- oder Out-of-Process-Server erstellen
Nach oben zu Active-Server-Seiten erstellen - Übersicht
Sie können Server.CreateObject in einer ASP-Seite einsetzen, um nach Bedarf entweder einen In-Process-Server oder einen Out-of-Process-Server zu starten. Das Starten eines In-Process-Servers ist das gebräuchlichere Vorgehen.
Im Gegensatz zu den meisten In-Process-Servern ist ein Active-Server-Objekt ein In-Process-Server, der nicht im Prozessraum des Clients ausgeführt wird. Stattdessen wird er im IIS-Prozessraum ausgeführt. Dies bedeutet, dass der Client Ihre Anwendung nicht herunterladen muss (wie z.B. bei Verwendung von ActiveX-Objekten) DLLs mit In-Process-Komponenten sind schneller, sicherer als Out-of-Process-Server. Sie sind also besser für den Einsatz auf dem Server geeignet.
Aufgrund der geringeren Sicherheit von Out-of-Process-Servern wird IIS häufig so konfiguriert, dass die Verwendung ausführbarer Out-of-Process-Dateien nicht zulässig ist. In diesen Fall würde die Erstellung eines Out-of-Process-Servers für Ihr Active-Server-Objekt eine Fehlermeldung wie die folgende ausgegeben:
Server object error 'ASP 0196' Cannot launch out of process component /path/outofprocess_exe.asp, line 11
Außerdem erstellen Out-of-Process-Komponenten häufig individuelle Server-Prozesse für jede Objektinstanz und sind deshalb langsamer als CGI-Anwendungen. Sie können nicht so problemlos wie Komponenten-DLLs skaliert werden.
Sind Leistung und Skalierbarkeit wichtige Kriterien für Ihre Site, raten wir dringend zum Einsatz von In-Process-Servern. Intranet-Sites mit mittlerem bis geringem Datenaufkommen können unter Umständen Out-of-Process-Komponenten einsetzen, ohne die Gesamtleistung der Site zu beeinträchtigen.