2010-05-17 74 views

Respuesta

15

Complete answer from David Wang.
Pros:

  • una solución provisional para aplicaciones defectuosas.

Contras:

  • peor rendimiento general.
  • Evite el uso del estado de sesión en el proceso. Por lo tanto, en la aplicación statefull tiene otra penalización de rendimiento para serializar el estado en una tienda externa.
1

Si tiene un servidor web multiprocesador (y la mayoría de los entornos sí lo tiene) y el rendimiento es bajo y la utilización de la CPU es baja también, es posible que desee considerar un jardín web. La idea básica es que, en lugar de un solo proceso de trabajo para el Servicio IIS, un jardín tiene un proceso de trabajo por CPU, lo que aumenta el rendimiento.

Here is how to configure the garden.

+11

Pero los hilos dentro de un solo proceso de trabajo también utilizan múltiples CPU. – hakan

-6

Web Gardens ayudan enormemente a mejorar el código gestionado de proceso intensivo. Sin WG, todas las solicitudes de servicio de subprocesos compiten por los mismos recursos. Cuando los hilos intentan asignar memoria, a menudo inducen la recolección de basura. La actividad de recolección de basura congela todos los hilos mientras limpia la memoria y concede la solicitud. Esto sucede para casi todos los hilos en ejecución. Al dividir la carga de trabajo en múltiples procesos, cada proceso tiene su propio espacio de memoria administrada y sus propias colecciones de basura. El procesamiento general de la CPU solo aumenta marginalmente, pero el porcentaje de CPU del W3WP.exe disminuye significativamente, el tiempo de ejecución de la transacción disminuye y la tasa de transacciones por segundo aumenta.

+1

Esto es un montón de tonterías. * Sin WG, todos los hilos ... compiten por los mismos recursos * Un WG todavía lucha por el mismo grupo de recursos de servidor, pero agrega la sobrecarga de un proceso adicional a la mezcla. * Cuando los hilos intentan asignar memoria, a menudo inducen la recolección de basura * El único efecto de un WG sobre esto es hacerlo * peor *, agregando incluso más hilos a la mezcla (cada proceso obtiene su propio conjunto de hilos de trabajo, que es ostensiblemente el * motivo * para tener un WG en primer lugar). * Cada proceso tiene su propio espacio de memoria administrada * nuevamente; empeorando las cosas *, no mejor ... cont ... –

+0

* El procesamiento general de la CPU aumenta solo marginalmente * si eso es cierto, entonces WG no era la solución correcta en primer lugar (las operaciones asíncronas hubieran sido mejores) * pero la CPU para W3WP.exe se reduce significativamente * completa tontería, * las transferencias de tiempo de transacción y las transacciones por segundo sube * rara vez; si la aplicación fue mal diseñada en primer lugar. –

Cuestiones relacionadas