2010-09-10 12 views
12

Estoy depurando una aplicación ASP.NET 2.0 que sufre una carga lenta de la página inicial.Varios eventos Application_Start que activan

Al agregar el registro, he encontrado que el evento Application_Start se dispara dos veces en el inicio con un breve retraso entre los dos eventos. El evento Session_Start también se activa dos veces, con el mismo valor de ID de sesión.

p. Ej.

 
[Header] 
2010-09-10 14:52:36.331 INFO Web.Global.Application_Start   START 
2010-09-10 14:52:37.409 INFO Web.Global.Session_Start    Session.SessionID=xxqjvun2ce2yqsumq1hfoj45 
[Header] 
2010-09-10 14:53:10.028 INFO Web.Global.Application_Start   START 
2010-09-10 14:53:10.325 INFO Web.Global.Session_Start    Session.SessionID=xxqjvun2ce2yqsumq1hfoj45 

Estoy ejecutando esto en mi máquina local, bajo IIS 5.1. El proyecto también utiliza ASP.NET MVC y la URL de la página aspx que se utiliza se modifica mediante el enrutamiento, using the technique shown on Phil Haack's site.

¿Alguna sugerencia sobre qué podría causar esto?

+2

¿Está la aplicación por casualidad modificando el archivo web.config? – muratgu

+0

¿Tiene Application_End despedido en el medio? ¿Tiene alguna llamada a "HttpRuntime.UnloadAppDomain" en su código? – Alex

+1

En mi caso, fue el análisis de Mc Afee Virus. Seguí esta guía para excluir carpetas https://support.microsoft.com/en-us/kb/3126034 – gavin

Respuesta

11

Finalmente nos dimos cuenta de que esto se debía a nuestra configuración de IIS.

Hace algún tiempo se tomó la decisión de cambiar el nombre del directorio virtual utilizado para este sitio web. Esto se hizo agregando una nueva configuración de directorio virtual, dejando la anterior en su lugar. Básicamente, teníamos dos directorios virtuales apuntando a la misma aplicación ASP.NET.

La migración al nuevo directorio virtual nunca se completó, por lo que algunas partes del sitio web siguen haciendo referencia al antiguo. Por lo tanto, dos Application_Start eventos ...

El arreglo se ha de cambiar de configuración para el directorio virtual en IIS edad para ser Una redirección a una dirección URL con el conjunto de direcciones URL a /NewVirtualDirectory $ S $ Q

3

Tuvimos una situación similar solo para descubrir que se debía a que habíamos hecho un cambio de nombre de ensamblado y teníamos dos copias del mismo código que hacía referencia a ese ensamblaje, versionA.dll y versionB.dll. ¡Entonces lo llamaron dos veces por eso!

0

En mi experiencia (después de horas de investigación y toneladas de codificación) que viene de

undeleted SQLite.Interop.dll en la carpeta x64

I borrado de archivos de hosting panel en lugar de FTP (FileZilla) y múltiples Application_Start eventos que se dispararon desaparecidos :-) Las causas de raíz de los problemas fue imparable proceso Quartz.Net que se conectó a este dll.

Cuestiones relacionadas