• Home
  • Help
  • Register
  • Login
  • Home
  • Help

 
  • 0 Bewertung(en) - 0 im Durchschnitt

Wie kannst du die Anwendungsinitiierung in IIS einrichten und verwalten, um den Start von Webanwendungen zu be...

#1
03-11-2023, 21:08
Du weißt, wie frustrierend es ist, auf eine Webanwendung zu warten, die hochgefahren wird, oder? Diese anfängliche Verzögerung kann für Benutzer wirklich abschreckend sein, besonders wenn sie gespannt darauf sind, mit dem zu interagieren, was wir entwickelt haben. Nun, ein cooler Trick, den ich gelernt habe, ist die Verwendung der Anwendungsinitialisierung in IIS, die wirklich helfen kann, diesen Prozess zu beschleunigen. Ich freue mich, dir zu zeigen, wie du das für deine eigenen Projekte einrichten und verwalten kannst.

Zuerst solltest du sicherstellen, dass du die richtige Version von IIS hast. Du benötigst IIS 8.0 oder neuer, der mit Windows Server 2012 und höher geliefert wird. Wenn du mit einem Windows 10-Rechner arbeitest, kannst du IIS über das Dialogfeld Windows-Features aktivieren. Vertrau mir, es erscheint wie ein kleiner Schritt, aber du möchtest nicht mitten im Prozess entdecken, dass deine Version veraltet ist.

Sobald du bestätigst, dass du die korrekte Version hast, ist das erste, was du tun möchtest, die Anwendungsinitialisierungsfunktion zu installieren. Du kannst dies über den Server-Manager tun. Vielleicht möchtest du den Server-Manager öffnen und zum Abschnitt "Rollen und Funktionen hinzufügen" gehen. Ich finde es einfacher, nach "Anwendungsinitialisierung" zu suchen und es auszuwählen, um es zu installieren. Dieser Teil ist normalerweise recht unkompliziert. Folge einfach den Anweisungen, und nach ein paar Minuten kannst du loslegen.

Jetzt, wo die Funktion installiert ist, musst du einige Anpassungen in den Site-Einstellungen vornehmen. Gehe in den IIS-Manager und suche deine Anwendung. Wenn du darauf klickst, siehst du einen Abschnitt mit der Bezeichnung "Anwendungsinitialisierung". Stelle sicher, dass du die Einstellung zur Anwendungsinitialisierung aktivierst. Dadurch kann IIS deinen Anwendungspool automatisch starten, ohne auf die erste Anfrage zu warten. Es ist wie eine Aufwärmrunde für deine App.

Der nächste Schritt besteht darin, deine web.config-Datei zu ändern. Du musst einige Einstellungen im Abschnitt <system.webServer> hinzufügen. Du musst angeben, wie du möchtest, dass die Anwendung beim Start des Servers vorab geladen wird. Setze beispielsweise den Anwendungsinitialisierungsmodus auf AlwaysRunning. Hier solltest du auch die Einstellung preloadEnabled auf true konfigurieren. Was dies im Wesentlichen tut, ist, IIS zu sagen, dass deine Anwendung beim Start geladen werden soll, anstatt auf die erste Benutzeranfrage zu warten. Das ist super hilfreich, wenn du es mit Anwendungen zu tun hast, die nicht regelmäßig besucht werden.

Während du dabei bist, vergiss nicht, den startMode auf AlwaysRunning zu setzen. Dadurch bleibt der Anwendungspool auch dann aktiv, wenn keine Anfragen die Site erreichen. Auf diese Weise müssen deine Benutzer beim Kommen nicht mit diesem Kaltstart umgehen, den du und ich beide hassen.

Um sicherzustellen, dass alles reibungslos läuft, kannst du den Leistungsmonitor verwenden, um ein Auge auf deine Anwendungspools zu haben. Manchmal stellst du fest, dass der Anwendungspool beim Booten des Servers nicht startet, was total frustrierend sein kann. Du kannst Startzeitlimits und Metriken definieren, um ihn aktiv zu halten, und die Einstellungen basierend darauf anpassen, wie sich deine Anwendung im Laufe der Zeit verhält, während du die Metriken sammelst.

Nachdem du all diese Konfigurationen vorgenommen hast, ist es Zeit, alles auszutesten. Ein entscheidender Bestandteil, den du einbeziehen solltest, ist die Einstellung initializationPage in deiner web.config. Dies definiert, welche Seite du möchtest, dass IIS beim Initialisieren deiner Anwendung aufruft. Wenn du beispielsweise eine Landingpage hast, die Dinge einrichtet oder wichtige Ressourcen lädt, setze das hier. Der Schlüssel ist, eine Seite auszuwählen, die nicht lange zum Laden braucht, also vermeide alles, was viel Verarbeitung oder große Inhaltsmengen benötigt. Ich wähle normalerweise etwas, das schnell reagiert.

Das Testen hört hier jedoch nicht auf. Ich habe gelernt, dass es super wichtig ist, reale Bedingungen zu simulieren. Öffne einen Browser und rufe deine Anwendung auf, wie es ein Benutzer tun würde. Behalte die Reaktionszeiten in den Entwicklertools (F12) im Auge. Wenn deine App nach dem Ausprobieren der Anwendungsinitialisierung immer noch langsam reagiert, musst du möglicherweise tiefer in andere Leistungsaspekte deiner Anwendung eintauchen.

Ein weiterer Trick, den ich unterwegs gelernt habe, ist die Verwendung von Aufwärmskripten. Du kannst ein kleines Skript erstellen, das regelmäßig Anfragen an deine Anwendung sendet, um sie warm zu halten, während sie nicht genutzt wird. Das kann ein Lebensretter sein, um diese gefürchteten langsamen Zugriffe beim erstmaligen Zugriff zu vermeiden. Setze es einfach auf einen Timer und vergiss es eine Weile. Es ist wie ein persönlicher Assistent nur für deine Webanwendung, der sie einsatzbereit hält.

Und denk daran, halte die Einstellungen zum Recycling deines Anwendungspools im Auge. Zu häufiges Recycling kann dazu führen, dass deine App lange braucht, um zu starten. Du möchtest das Recycling möglicherweise während der Zeiten mit geringem Verkehr einstellen, um Störungen zu minimieren. Du möchtest sicherlich nicht, dass deine App in einem schläfrigen Zustand mitten im Hauptverkehrsaufkommen ist. Das fragt nur nach Trouble.

Vergiss nicht, Überwachungstools wie Application Insights zu nutzen, die dir eine Warnung geben können, wenn die Leistung deiner Anwendung nachlässt. Wenn du häufige Kaltstarts oder Unregelmäßigkeiten bei den Reaktionszeiten beobachtest, weißt du, dass du möglicherweise deine Einstellungen zur Anwendungsinitialisierung oder die gesamte Anwendungsarchitektur anpassen musst.

Wenn du das verwaltest, ist es auch gut, den Prozess zu dokumentieren. Nichts zu Ernstes, nur ein paar Notizen für dich selbst oder für jemanden, der in Zukunft deine Webanwendung übernehmen könnte. Notiere, was du konfiguriert hast, welche besonderen Einstellungen du geändert hast und vielleicht sogar die Gründe für diese Entscheidungen. Ich weiß, es scheint mühsam, aber wenn etwas schiefgeht, wirst du froh sein, dass du es getan hast.

Eine letzte Sache - halte deinen Anwendungscode optimiert, während du diese Einstellungen anwendest. Wenn dein Code schwerfällig ist oder zu viele Backend-Aufrufe beim Startvorgang stattfinden, wird kein noch so großes Tuning in IIS den Tag retten. Regelmäßiges Refactoring und sicherstellen, dass deine Front-End-Ressourcen leichtgewichtet sind, können einen riesigen Einfluss auf die Startzeiten haben.

Also lass mich das zusammenfassen, indem ich Folgendes sage: Die Anwendungsinitialisierung ist ein leistungsstarkes Tool in IIS, das die Reaktionsfähigkeit deiner Webanwendung dramatisch verbessern kann. Sobald du es eingerichtet hast, überwache es und behalte die Leistungsmetriken im Auge, wirst du feststellen, dass deine Benutzer die viel reibungslosere Erfahrung zu schätzen wissen. Ich weiß, es erfordert etwas Arbeit, aber diese Zeit zu investieren kann dir unzählige Kopfschmerzen in der Zukunft ersparen.

Ich hoffe, du fandest meinen Beitrag nützlich. Übrigens, hast du eine gute Windows-Server-Backup-Lösung? In diesem Beitrag erkläre ich, wie man Windows Server richtig sichert.
Markus
Offline
Registriert seit: Jun 2018
« Ein Thema zurück | Ein Thema vor »

Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste



  • Thema abonnieren
Gehe zu:

Backup Sichern Windows Server IIS v
« Zurück 1 2 3 4 5 6 7 8 9 10 11
Wie kannst du die Anwendungsinitiierung in IIS einrichten und verwalten, um den Start von Webanwendungen zu be...

© by FastNeuron

Linearer Modus
Baumstrukturmodus