Web garden ... sono buoni o cattivi o cosa?


28

Ci sono degli svantaggi nel dare ai pool di applicazioni più processi di lavoro in IIS? Sembrano davvero facili da abilitare e (quasi) tutto ciò che ho letto sembra suggerire che sono buoni ... quindi perché IIS non dà ad ogni App Pool 10+ Worker Process? Ci devono essere alcuni effetti dannosi, giusto?

Risposte:


36

Hai ragione a essere sospettoso. I Web Gardens che non hanno un aspetto negativo sono un mito enorme, possono causare problemi senza fine, ma molte persone non sanno nemmeno quando dovrebbero essere usati.

Secondo Chris Adams (del team IIS) esiste solo un motivo per cui si desidera utilizzare un Web Garden: fornire applicazioni che non sono legate alla CPU ma eseguono richieste di lunga durata, la possibilità di ridimensionare e non utilizzare tutto thread disponibili nel processo di lavoro. Ci sono molte ragioni per cui possono essere cattive, tuttavia, è un'idea sbagliata comune che non ci sia un aspetto negativo.

Aumentano le spese generali di sistema (non condividono la cache), non condividono le sessioni (l'utente può perdere la sessione se passa a un altro processo), InProc può incasinarsi. In breve, sono in realtà, il più delle volte, un sacco di problemi e non dovresti usarne uno senza una buona ragione.

Leggi la spiegazione completa di Chris: http://blogs.iis.net/chrisad/archive/2006/07/14/1342059.aspx

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


5
Ben detto, come lo è il post di Chris. I web garden non sono quasi mai necessari. È sufficiente un solo processo per server nel 99,5% delle volte. Ho avuto l'opportunità di testare i web garden su server ad alto carico che non funzionavano bene e alla fine non li abbiamo mai mantenuti abilitati. Abbiamo sempre trovato soluzioni migliori. Sono utili solo per le attività che richiedono una lunga durata delle risorse. Il loro utilizzo ha un ingombro di memoria maggiore e problemi di continuità della sessione. Mentre ciò può essere risolto, raramente è necessario.
Scott Forsyth - MVP,

È spaventoso il numero di testi che non menzionano mai i loro lati negativi: anche il sito Web di Microsoft ha pagine del genere.
Django Reinhardt,

7
Tutto sta nel non considerare i web garden nella maggior parte dei casi .. MA SESSIONE problemi? Intendo solo se sei impostato su InProc. Ora non useresti InProc in produzione, giusto ?!
Andrei Rînea,

@AndreiRinea Incredibile come poche persone sappiano che ci sono alternative a InProc ..
Gats

1
Per quanto questa sia sicuramente la risposta migliore, in questo momento l'unica informazione che posso trovare su quando usare un web garden è la citazione esatta in questa risposta (cioè "... applicazioni che non sono legate alla CPU ... "). Il problema per me è che non so cosa significhino alcuni di questi termini. Forse questo significa che non dovrei giocarci, ma sono un amministratore di sistema, non uno sviluppatore, e talvolta gli sviluppatori non sanno nemmeno queste cose. Quindi sarebbe davvero una spiegazione più completa di cosa significhi quella citazione .
Todd Wilcox,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.