Jardines web ... son buenos o malos o qué?

28

¿Hay alguna desventaja en dar a los grupos de aplicaciones múltiples procesos de trabajo en IIS? Parecen realmente fáciles de habilitar y (casi) todo lo que he leído parece sugerir que son buenos ... entonces, ¿por qué IIS no da a cada grupo de aplicaciones 10+ procesos de trabajo? Debe haber algunos efectos perjudiciales, ¿verdad?

Nai
fuente

Respuestas:

36

Tienes razón en sospechar. El hecho de que Web Gardens no tenga inconvenientes es un mito enorme, pueden causarle un sinfín de problemas, pero muchas personas aún no saben cuándo deberían usarse.

Según Chris Adams (del equipo de IIS), solo hay una razón por la que desearía usar un Web Garden: para dar aplicaciones, que no están vinculadas a la CPU, sino que ejecutan solicitudes de larga duración, la capacidad de escalar y no agotar todas hilos disponibles en el proceso de trabajo. Hay muchas razones por las que pueden ser malas, sin embargo, es un error común pensar que no hay inconvenientes.

Aumentan los gastos generales del sistema (no comparten caché), no comparten sesiones (el usuario puede perder su sesión si se cambia a otro proceso), InProc puede enredarse. En resumen, en realidad, la mayoría de las veces, son muchos problemas, y no deberías usar uno sin una buena razón.

Lea la explicación completa de Chris: http://blogs.iis.net/chrisad/archive/2006/07/14/1342059.aspx

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

Django Reinhardt
fuente
55
Bien dicho, como es el post de Chris. Los jardines web casi nunca son necesarios. Un solo proceso por servidor es todo lo que se requiere en el 99.5% del tiempo. He tenido la oportunidad de probar jardines web en servidores de alta carga que no estaban funcionando bien y al final nunca los mantuvimos habilitados. Siempre encontramos mejores soluciones. Son solo para tareas de ejecución de bajo consumo de recursos que ayudan. Usarlos tiene una mayor huella de memoria y problemas de continuidad de sesión. Si bien eso se puede solucionar, rara vez se necesita.
Scott Forsyth - MVP
Da miedo cuántos textos nunca mencionan sus desventajas, incluso el propio sitio web de Microsoft tiene páginas como esa.
Django Reinhardt el
77
Todo está bien sobre no considerar jardines web en la mayoría de los casos ... ¿PERO problemas de sesión? Me refiero solo si está configurado en InProc. Ahora no estarías usando InProc en producción, ¿verdad?
Andrei Rînea el
@AndreiRinea Increíble cómo pocas personas saben que hay alternativas a InProc ..
Gats
1
Si bien esta es ciertamente la mejor respuesta, en este momento la única información que puedo encontrar sobre cuándo usar un jardín web es la cita exacta en esta respuesta (es decir, "... aplicaciones, que no están vinculadas a la CPU ... "). El problema para mí es que no sé qué significan algunos de esos términos. Quizás eso significa que no debería estar jugando con él, pero soy un administrador de sistemas, no un desarrollador, y a veces los desarrolladores tampoco saben estas cosas. Entonces, una explicación más completa de lo que significa esa cita sería bueno.
Todd Wilcox