ASP Tipp 7: Verkapseln Sie Code in COM-Objekten

Wenn Sie VBScript oder JScript vermehrt verwenden, können Sie in vielen Fällen die Leistung verbessern, indem Sie den Code in ein kompiliertes COM-Objekt verschieben. Kompilierter Code wird normalerweise schneller ausgeführt als interpretierter Code. Kompilierte COM-Objekte können über die „Auflösung zur Kompilierungszeit“, eine effizientere Methode zum Aufrufen von COM-Objektmethoden als die vom Skript verwendete „Auflösung zur Laufzeit“, auf andere COM-Objekte zugreifen.

Das Verkapseln von Code in COM-Objekten hat (abgesehen von der Leistung) einige Vorteile.

  1. COM-Objekt eignen sich gut zum Trennen der Präsentationslogik von der Geschäftslogik.
  2. COM-Objekte ermöglichen die Wiederverwendung von Code.
  3. Vielen Entwicklern füllt das Debuggen von Code, der in VB, C++ oder Visual J++ geschrieben wurde, leichter als das Debuggen von ASP.  

COM-Objekte haben Nachteile, darunter die anfängliche Entwicklungszeit und der Bedarf an unterschiedlichen Programmierungskenntnissen. Beachten Sie, dass das Verkapseln kleiner ASP-Beträge eher zu Leistungseinbußen als Leistungssteigerungen führt. Dies ist normalerweise der Fall, wenn ein geringer Umfang an ASP-Code in ein COM-Objekt eingefügt wird. Hier macht der Aufwand beim Erstellen und Aufrufen des COM-Objekts die Vorteile des kompilierten Codes zunichte. Sie werden die ideale Kombination aus ASP-Skript und COM-Objektcode zum Produzieren der optimalen Leistung nur durch Ausprobieren finden. Beachten Sie, dass Microsoft die Leistung von Skripts und ADO in Windows 2000/IIS 5.0 im Vergleich zu Windows NTä 4.0/IIS 4.0 enorm verbessert hat. Aus diesem Grund hat sich der Leistungsvorteil von kompiliertem Code im Vergleich zu ASP-Code seit der Einführung von IIS 5.0 verringert.

Ausführliche Diskussionen über die Vor- und Nachteile der Verwendung von COM-Objekten in ASP finden Sie in folgenden Dokumenten: „ASP Component Guidelines“ und „Programming Distributed Applications with COM and Microsoft Visual Basic 6.0“. Wenn Sie COM-Komponenten bereitstellen, müssen Sie diese unbedingt Belastungstests unterzogen werden. Im Prinzip sollten alle ASP-Anwendungen automatisch einem Belastungstest unterzogen werden.