Estoy ejecutando una aplicación que obtiene resultados de búsqueda del servidor de solr. Pero cuando el servidor no se ejecuta, no recibo respuesta del servidor. ¿Hay alguna forma en que pueda encontrar que mi servidor no se está ejecutando para que pueda dar el mensaje de error correcto al respectoCómo encontrar si el servidor de solr se está ejecutando o no
Respuesta
Probablemente debería utilizar algo como Nagios para controlar el estado de su hardware. Nagios también tiene un buen plugin for solr que puede ayudarte.
Si el servidor no está respondiendo de manera oportuna (Solr), entonces debería considerar representándolo estar abajo y presentar el mensaje de error, independientemente de si es o no (es decir, su tomando mucho tiempo debido a que su sobrecargado) . Si lleva una eternidad cargarlo al usuario :)
La mayoría de los clientes de Solr tienen un tiempo de espera y una devolución de llamada de error de algún tipo. Si pasa el tiempo de espera, entonces muestra el error.
Si desea saber muy rápidamente que el servidor no funciona, puede colocar un JSP en solr que no haga más que imprimir un mensaje. Luego haga un HTTP GET al JSP y, si no aparece muy rápido, el servidor está inactivo.
Creo que, desde el lado del cliente, un enfoque de tiempo de espera es más prudente que hacer ping periódicamente al servidor. –
Se puede hacer ping periódicamente su servidor (por ejemplo http://localhost:8983/solr/admin/ping
) y en caso de un error pasar ese mensaje a la interfaz ...
: ¿cómo debo hacer ping al servidor de Solr a través de la base de código para obtener el error? – Romi
Su lenguaje de programación probablemente tiene alguna facilidad para programar trabajos que se ejecutarán regularmente (por ejemplo, http://www.quartz-scheduler.org para Java ...) Luego envíe una solicitud GET a la URL ping y procese el Respuesta de estado HTTP en consecuencia ... –
Sé que esta es una respuesta anterior, pero ya no se aplica al último Solr. – Marc
Si tiene SolrServer
objeto, simplemente llame SolrServer.ping()
se lanza una excepción si no puede establecer la conexión.
- 1. Cómo saber si el servidor de emacs se está ejecutando
- 2. ¿Cómo verificar si el servidor X se está ejecutando?
- 3. cómo saber si la VM se está ejecutando en el modo de servidor o cliente?
- 4. encontrar un trabajo si se está ejecutando en Quartz1.6
- 5. Comprobar si el proceso se está ejecutando
- 6. ¿Cómo comprobar si JBoss se está ejecutando en el servidor Unix?
- 7. ¿Cómo determinar si su aplicación se está ejecutando en el Servidor de Desarrollo de Python local?
- 8. compruebe si el programa se está ejecutando y ejecútelo si no está en perl
- 9. Compruebe si un subproceso de Win32 se está ejecutando o está en estado suspendido
- 10. Determinar si el programa se está ejecutando en Windows Server
- 11. ¿Cómo encontrar si una matriz json está vacía o no?
- 12. Cómo detectar si el iphone está sincronizado cuando la aplicación no se está ejecutando
- 13. Finalmente el bloque no se está ejecutando?
- 14. Solr no puede encontrar el controlador JDBC
- 15. ¿Puedo encontrar a qué usuario se está ejecutando el servidor web como en PHP?
- 16. Cómo comprobar si SQL Server Agent se está ejecutando
- 17. Selenium 2: ¿Cómo comprobar que el servidor se está ejecutando y detener el servidor?
- 18. ¿Cómo puedo detectar si mi proceso se está ejecutando UAC elevado o no?
- 19. Verifica programáticamente si se está ejecutando syncdb
- 20. ¿Cómo puedo saber si el código de Rails se está ejecutando mediante rake o script/generate?
- 21. comisión si ya se está ejecutando
- 22. Periodictask no se está ejecutando
- 23. applicationDidFinishLaunching no se está ejecutando
- 24. OSX: ¿Cómo detectar si se está ejecutando Mission Control?
- 25. ¿Cómo puede mi programa determinar si se está ejecutando en Windows de 32 o 64 bits?
- 26. Powershell: si un proceso no se está ejecutando, inícielo
- 27. ¿Cómo encontrar el puerto local en el que se está ejecutando una instancia de raíles?
- 28. Cómo comprobar si se está ejecutando un Thread de Android
- 29. ¿Cómo puedo probar si R se está ejecutando como Rscript?
- 30. cómo se comprueba si UIWebView está vacío o no
Nagios no va a ayudar mucho si está tratando de manejar esto en su interfaz (mensaje de error). –
bueno, él no especificó demasiado, nagios es la solución más independiente que pude pensar. –