Ich habe eine ASP.NET-Webanwendung, die auf dem Backend mit einem ASMX-Webdienst kommuniziert. Wir haben gezählt und die durchschnittliche Wartezeit für die erste Anfrage ist 20s. Ich frage mich, ob es eine Möglichkeit gibt, den Web-Service vorkompiliert an den Server zu schicken und damit die Notwendigkeit einer Kompilierung zu negieren.Wie verhindere ich, dass IIS Websites kompiliert?
Wir haben auch festgestellt, dass IIS seine Worker-Threads zu recyceln neigt und dies auch eine Kompilierung verursacht. Auf den Prozess selbst wird nicht oft zugegriffen, aber er muss viel schneller sein.
Irgendwelche Gedanken?
Vielen Dank im Voraus
Update: Dank an alle Vorschläge, habe ich eine Reihe von ihnen versucht, und hier ist das, was ich gefunden habe. Recycle Time Shutdown/Tinkering ist gefährlich, weil ich nicht möchte, dass Threads einfach rumsitzen und nichts tun. Bei näherer Betrachtung wird die Seite vorkompiliert, weshalb meine Frage ist, warum gibt es eine erste Anlaufzeit für einen Webservice?
Gerade jetzt: Lehnen in Richtung der Warm-up-Skript Vorschlag unter
Update: Der Dienst auf einer anderen Maschine von einem Webserver getroffen wird. Wir sehen nur Probleme mit der ersten Anfrage.
Wenn wir es auf den Punkt kommen könnten, wo keine Kompilierung notwendig, immer neben war, bevor ich bewege Dinge zum virtuellen Verzeichnis, ich denke, das wäre optimal. Ist das überhaupt möglich? – xximjasonxx
Wenn Sie vorkompilieren, ist Ihr Problem nicht IIS-Kompilierung. Startup-Zeit für Web-App ist eine Sache und Compilation ist eine andere. – Vnuk