2010-12-21 10 views
5

Un problema con las aplicaciones ASP.NET es que se vuelven a cargar periódicamente, lo que provoca un gran retraso y posiblemente un tiempo de espera para los usuarios que acceden al sitio durante ese tiempo.¿Cómo eliminar el retraso de recarga de la aplicación ASP.NET utilizando el equilibrador de carga?

Esto puede no ser un problema para sitios web pequeños, pero puede representar un tiempo de inactividad significativo para sitios con mucho tráfico, si los usuarios se enrutan a un nodo en la granja de servidores web que se está reiniciando.

La precompilación puede ayudar, pero para los sitios web con muchas páginas, todavía hay un retraso inevitable.

¿Pueden los equilibradores de carga de alguna manera "saber" si se reinicia un dominio de aplicación ASP.NET en un servidor específico? Luego, pueden enrutar el tráfico alrededor de este servidor hasta que la aplicación se haya reiniciado por completo.

Actualmente, tengo mi equilibrador de carga haciendo ping en una página .aspx simple en el sitio. Si hay un retraso o la página no se carga, el host queda fuera de rotación. ¿Es posible hacer un control de salud más específico, tal vez a nivel de IIS en lugar de ASP.NET?

Respuesta

0

Tanto IIS6 como IIS7 son compatibles con la programación de reinicios del grupo de aplicaciones a intervalos o tiempos fijos. Si su equilibrador de carga puede sacar nodos según un cronograma, puede sincronizar los dos cronogramas.

También podría obligar a reciclar el balanceador de carga programáticamente, eche un vistazo a http://blog.developers.ie/cgreen/archive/2006/10/20/2341.aspx para 2 opciones.

Por supuesto, estos no manejarán casos cuando el grupo de aplicaciones se reinicie por otros motivos.

Cuestiones relacionadas