Foros del Web » Programando para Internet » PHP »

Código que detecta errores en la ejecución y borrar el cache automáticamente?

Estas en el tema de Código que detecta errores en la ejecución y borrar el cache automáticamente? en el foro de PHP en Foros del Web. Hola Buenos dias, Tengo un código php que se ejecuta con cache de 12 horas. A las 12 horas el cache es borrado y la ...
  #1 (permalink)  
Antiguo 16/01/2016, 04:37
 
Fecha de Ingreso: febrero-2014
Ubicación: Barcelona
Mensajes: 4
Antigüedad: 10 años, 2 meses
Puntos: 0
Pregunta Código que detecta errores en la ejecución y borrar el cache automáticamente?

Hola Buenos dias,

Tengo un código php que se ejecuta con cache de 12 horas. A las 12 horas el cache es borrado y la pagina vuelve a cargarse. Un cron job que revisa la pagina cada tantos minutos.

A veces no se porque razón me da errores de este tipo:
[function.file-get-contents]: failed to open stream: operation failed

El código coge muchos datos de una API en varios php separados, lo hice asi para aligerar pero el error sigue pasando igual aleatoriamente. Y claro el cache es de 12-24 horas durante el cual la gente que entre vera ese error.

Entonces se me ocurre que podría haber algún código para que si existe error en alguno de los códigos php que ocasione ese error borre directamente el cache para que el cron job pueda cargar bien.

Perdonen mi poca experiencia ya que empiezo con esto hace poco.

Un Saludo!
  #2 (permalink)  
Antiguo 16/01/2016, 04:38
3nr1c
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Código que detecta errores en la ejecución y borrar el cache automáticamen

Hola,

Cómo está implementada la caché? Redis, sesiones...?

Un saludo ;)
  #3 (permalink)  
Antiguo 16/01/2016, 05:00
 
Fecha de Ingreso: febrero-2014
Ubicación: Barcelona
Mensajes: 4
Antigüedad: 10 años, 2 meses
Puntos: 0
Respuesta: Código que detecta errores en la ejecución y borrar el cache automáticamen

La cargo desde los php con include("cache.php");
Luego en cache.php ahí se define un directorio donde van a parar los cache .html cada tanto tiempo (12h) luego todo ese directorio se vacía. Y el código carga nuevamente. Si el fichero html existe evidentemente usa el cache. El problema es ese que si el html se carga mal pues el error sigue ahí 12 horas o tengo que borrar yo mismo el cache cuando a veces veo el error al entrar en la web. Quizás seria mejor ver porque acaba saliendo el error a veces, pero ya digo es completamente aleatorio a veces carga bien, otras no. También es cierto que el código tarda como 3-5 minutos en cargarse entero por eso uso el cache si no seria imposible.

Que me recomiendan hacer? :D
Si me dicen mas o menos el camino que tomarían yo mismo ya investigo para implementarlo. Pero no se exactamente por donde tirar ahora mismo.

Gracias!
  #4 (permalink)  
Antiguo 16/01/2016, 10:53
3nr1c
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Código que detecta errores en la ejecución y borrar el cache automáticamen

La manera más rápido que se me ocurre es usando la función exec de PHP (http://php.net/manual/es/function.exec.php) y usar una instrucción de bash desde el directorio de la caché:

Código BASH:
Ver original
  1. rm *.html

Cuando tengas que limpiarla. De hecho, es posible que sea el método que usas para limpiar cada 12h (?).

Saludos!

Etiquetas: cache, detecta, errores
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:25.