2012-03-19 20 views
5

Tengo un servidor de equilibrio de carga central y varios servidores de aplicaciones que se ejecutan en Apache Tomcat. El servidor de equilibrio de carga recibe la solicitud y los reenvía a los servidores de aplicaciones en forma de turno rotativo. Si uno de estos servidores de aplicaciones deja de funcionar, el servidor de equilibrio de carga debe dejar de reenviarle las solicitudes.¿Cuáles son buenas maneras de monitorear el estado del servidor?

Mi solución actual para esto es hacer ping a los servidores de aplicaciones cada pocos minutos y, si no recibo una respuesta, eliminarlos de una lista de servidores disponibles. ¿Hay una mejor manera de controlar el estado de estos servidores? ¿Debería hacer ping más a menudo o los servidores de aplicaciones deben informar constantemente al servidor de equilibrio de carga?

Respuesta

5

Ejecute una transacción nula en él regularmente. Hacer ping realmente no es suficiente, solo ejercita la pila TCP/IP, y he visto sistemas operativos en estados donde TCP/IP estaba arriba pero no hay aplicaciones y ni siquiera forma parte del OS. Ejecutar una transacción lo ejerce todo. Incluye la base de datos en la transacción nula.

+0

¿Sería una transacción nula un GET simple que solo responde 200 OK? –

+0

@SotiriosDelimanolis Esa sería la transacción más nula posible, pero como dije anteriormente, algo que involucre la base de datos sería más completo, por ejemplo, SELECCIONAR ... LÍMITE 1. – EJP

+0

Mi servlet ya realiza una consulta de MySQL "START TRANSACTION" en la base de datos justo antes de que maneje la solicitud, por lo que ya estoy cubierto. Gracias por la respuesta. –

0

En primer lugar asegurarse de que sus DDoS ISN servidor attrack protegidos, si el depende de usted conexión de la aplicación tiempo promedio de edición mantener el tiempo de vida

entonces debería estudiar sobre mpm precock, creo que va a darle la mejor solución

Cuestiones relacionadas