Pregunta

Me disculparé con antelación ya que este post nace de la frustración grave.

Tengo un sitio web ASP clásico que ha estado funcionando en Windows 2000 / IIS5 durante años, y otro 2,0 sitio de ASP.NET que recientemente hemos comenzado a ejecutar en los mismos servidores. Hasta ahora, todo está funcionando bien.

El año pasado, he intentado actualizar (nueva instalación) para Windows 2003 / IIS6. El sitio de ASP clásico fue mucho más lento, alrededor del 50% más lento basado en logs / estadísticas promediados sobre semanas de uso. He intentado todo para averiguar lo que era lento. ajustes de red. Integrado. IIS5 modo clásico. En proceso. Fuera de proceso. Nada se hizo mejor las cosas y pronto vuelve a ser IIS5 / 2000. El mismo día deshace, el rendimiento fue de vuelta a donde estaba. Esto sucedió en más de un servidor. Con el tiempo, me di por vencido y lo atribuimos a 2003 TCP cuestiones de algún tipo.

Recientemente he instalado un servidor 2008 / IIS de Windows en una máquina similar, pero más potente, con la esperanza de que las cosas eran mejores. Gran parte de mi felicidad, mi aplicación ASP clásico es más rápido en Windows 2008. Por desgracia, mi aplicación ASP.NET es un 50-75% más lento para la razón evidente ahora. Todo eso es un montón de contenido. Está en la misma red que la máquina 2000. El sitio fue copiada directamente de la otra máquina, y es una compilación previa aplicación web desde el estudio de 2005.

Mientras que la página no golpeó la base de datos y otro servidor para los datos iniciales, almacena en caché desde allí durante bastante tiempo, sino que también utiliza los mismos servidores de base de datos como el sitio clásico, que es rápido, así que sé que no es necesariamente una problema de conexión.

He intentado la piscina aplicación por defecto y la piscina .NET clásico hecho ninguna diferencia. Upped./check los hilos máximo, máximo por la CPU en todos los lugares habituales, Garen web o nada de nada parece importar. He comprobado que el doble de depuración compilación = false está siendo establecido en el web.config.

Para una referencia rápida, solía ab.exe (Bench Apache) para enviar 10 solicitud, 1 a la vez. Incluso si uso Internet Explorer o Firefox para golpear el sitio, es claramente más lento que en virtud de 2000, incluso de acuerdo con Firebug.

En este punto, estoy frustrado y en una pérdida completa en cuanto a dónde empezar. Alguien ha pasado por este tipo de desastre antes?

¿Fue útil?

Solución 2

En mi caso, la respuesta resultó ser sencillo Me dispararon hasta WireShark. Hubo 1 petición de recursos externos que no podían ser resueltos desde la máquina de prueba no tenía acceso directo a Internet, como la máquina en vivo lo hizo.

Es siempre las pequeñas cosas.

Otros consejos

La velocidad depende de muchos factores. Es necesario para medir el rendimiento sólo en el servidor de entender si esto es problema del servidor. Habilitar el seguimiento de su sitio web en la configuración web y ver qué parte / función la hace lenta. Puede agregar es el propietario trazado después de cada operación para ver qué bloque de código es más lento. Estoy seguro de que encontrará cosas que se pueden mejorar / optimizar una vez que la parte de la página es la más lenta.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top