Webgärten… sind sie gut oder schlecht oder was?

28

Gibt es Nachteile, wenn Sie Anwendungspools in IIS mit mehreren Arbeitsprozessen versehen? Sie scheinen wirklich einfach zu aktivieren zu sein und (fast) alles, was ich gelesen habe, scheint darauf hinzudeuten, dass sie gut sind. Warum gibt IIS nicht jedem App Pool 10+ Worker Processes? Es muss nachteilige Auswirkungen haben, oder?

Nai
quelle

Antworten:

36

Sie haben Recht, misstrauisch zu sein. Web Gardens, die keine Nachteile haben, sind ein gewaltiger Mythos. Sie können Ihnen unendlich viele Probleme bereiten, aber viele Menschen wissen immer noch nicht einmal, wann sie eingesetzt werden sollten.

Laut Chris Adams (vom IIS-Team) gibt es nur einen einzigen Grund, warum Sie einen Webgarten verwenden möchten: Anwendungen, die nicht an die CPU gebunden sind, aber Anforderungen mit langer Laufzeit ausführen, können skaliert und nicht alle verwendet werden Threads im Worker-Prozess verfügbar. Es gibt viele Gründe, warum sie schlecht sein können, es ist jedoch ein weit verbreitetes Missverständnis, dass es keinen Nachteil gibt.

Sie erhöhen den System-Overhead (sie geben keinen Cache frei), sie geben keine Sitzungen frei (der Benutzer kann seine Sitzung verlieren, wenn er auf einen anderen Prozess umschaltet), InProc kann durcheinander geraten. Kurz gesagt, sie bereiten tatsächlich häufig große Probleme, und Sie sollten keine ohne triftigen Grund verwenden.

Lesen Sie die vollständige Erklärung von Chris: http://blogs.iis.net/chrisad/archive/2006/07/14/1342059.aspx

Weitere Informationen: http://weblogs.asp.net/owscott/why-you-shouldn-t-use-web-gardens-in-iis-week-24

Django Reinhardt
quelle
5
Gut gesagt, genauso wie Chris 'Post. Webgärten werden so gut wie nie benötigt. In 99,5% der Fälle ist nur ein einzelner Prozess pro Server erforderlich. Ich hatte die Möglichkeit, Webgärten auf Servern mit hoher Auslastung zu testen, die keine gute Leistung zeigten, und wir haben sie letztendlich nie aktiviert. Wir haben immer bessere Lösungen gefunden. Sie helfen nur bei ressourcenarmen Aufgaben. Ihre Verwendung hat einen größeren Speicherbedarf und Probleme mit der Sitzungskontinuität. Dies kann zwar umgangen werden, wird aber selten benötigt.
Scott Forsyth - MVP
Es ist beängstigend, wie viele Texte ihre Schattenseiten nie erwähnen - selbst auf der Microsoft-Website gibt es solche Seiten.
Django Reinhardt
7
In den meisten Fällen werden Webgärten nicht berücksichtigt. ABER SESSION-Probleme? Ich meine nur, wenn du auf InProc eingestellt bist. Jetzt würden Sie InProc nicht mehr in der Produktion einsetzen, oder ?!
Andrei Rînea
@ AndreiRinea Erstaunlich, wie wenige Menschen wissen, gibt es Alternativen zu InProc ..
Gats
1
So sehr dies sicherlich die beste Antwort ist, im Moment ist die einzige Information, die ich über die Verwendung eines Webgartens finden kann, das genaue Zitat in dieser Antwort (dh "... Anwendungen, die nicht CPU-gebunden sind ..."). "). Das Problem für mich ist, dass ich nicht weiß, was einige dieser Begriffe bedeuten. Vielleicht bedeutet das, dass ich nicht damit spielen sollte, aber ich bin ein Systemadministrator, kein Entwickler, und manchmal kennen Entwickler diese Dinge auch nicht. Also wirklich eine vollständigere Erklärung , was das Zitat Mittel wäre schön.
Todd Wilcox