Mi página web usa Google charts para producir cinco gráficos. Si los gráficos aún no están en la memoria caché, tengo la siguiente línea de código que recupera la imagen.
$ image = file_get_contents ("http://chart.apis.google.com/chart?". $ Query);
Cuando ese código se ejecuta en un bucle, toma 10 segundos obtener cada imagen. Pero, si cambio el código para usar una de las direcciones IP de Google en lugar de la url:
$ image = file_get_contents ("http://74.125.93.100/chart?". $ Query);
Tarda menos de un segundo para recuperar las imágenes. Entonces, mi idea inicial fue que el DNS no está resolviendo la URL y que la demora consiste en pasar por los servidores DNS asignados. Así que traté de hacer ping a chart.apis.google.com desde el servidor e inmediatamente me respondió razonablemente.
Así que mi pregunta es: ¿Hay alguna configuración de PHP (o Apache2) que pueda estar pasando por alto que pueda causar este retraso, o esto suena como un problema de configuración del servidor?
¿Qué sucede si usa otro método para recuperar la imagen como cURL? – Matt
¿Qué versión de PHP? ¿Alguna posibilidad de actualizar a la última para ver si eso soluciona el problema? –
Haría algunas pruebas para ver si DNS realmente es el problema. Puede ajustar sus llamadas API en un bloque de tiempo. –