Foros del Web » Programando para Internet » PHP »

Ejecutar PHP al arrancar el servidor web

Estas en el tema de Ejecutar PHP al arrancar el servidor web en el foro de PHP en Foros del Web. Muy buenas a tod@s, Después de googlear bastante no he encontrado ninguna solución a mi problema y me estoy temiendo que no exista. Os comento: ...
  #1 (permalink)  
Antiguo 27/05/2011, 02:03
 
Fecha de Ingreso: enero-2011
Ubicación: Bilbao
Mensajes: 18
Antigüedad: 13 años, 11 meses
Puntos: 0
Ejecutar PHP al arrancar el servidor web

Muy buenas a tod@s,

Después de googlear bastante no he encontrado ninguna solución a mi problema y me estoy temiendo que no exista.

Os comento:

Estoy programando ciertos servicios web (NuSOAP) en un servidor web (Lighttpd) que se encuentra en un sistema embedido Linux.
Como es lógico el equipo tiene que cumplir su función y para ello el servidor web no debería darle "trabajo de más". Resulta que en varios servicios web creo un objeto DOM que carga un XML grande (>4 MB) y claro, la carga supone unos 20-25 segundos de media, y no es lógico tener que hacerlo en cada petición.

Aquí va mi pregunta:

¿Se puede hacer algo para que ese XML se cargue en un objeto DOM nada más arrancarse el lighttpd y que ese objeto DOM se convierta en accesible (GLOBAL) para todos los php que se ejecuten posteriormente? ¿Algún tipo de modificación en el lighttpd.conf o en el php.ini?

El objetivo sería realizar esa carga al principio y cada vez que cambie el XML, no en cada petición.

Siento mucho la chapa ;)

Muchas gracias de antemano!
  #2 (permalink)  
Antiguo 27/05/2011, 06:30
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años, 6 meses
Puntos: 1517
Respuesta: Ejecutar PHP al arrancar el servidor web

Estás visualizando PHP de una forma diferente. No se puede hacer lo que pides de la forma como lo estás pidiendo.

Pero no se acaba la vida ahí. Podrías hacer algo como que la primera vez que el usuario visite la página cree por ejemplo un cookie que ya visitó pero a la vez corra por primera vez el XML y almacene lo que desees que el usuario vea en sesiones. Cada vez que haces una petición a la página verifica si existen las sesiones, si no es así entonces corre nuevamente el código de DOM y almacena lo que quieras que lea específicamente en sesiones y siempre usa las sesiones para verificar los datos.

Digo es una idea, ya que no brindas información de lo que contiene específicamente el XML que es tan grande.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #3 (permalink)  
Antiguo 30/05/2011, 01:06
 
Fecha de Ingreso: enero-2011
Ubicación: Bilbao
Mensajes: 18
Antigüedad: 13 años, 11 meses
Puntos: 0
Respuesta: Ejecutar PHP al arrancar el servidor web

Hola abimaelrc y gracias por responder.

La verdad es que también había pensado en esa posibilidad, pero creo que como no estoy familiarizado con las sesiones en PHP pensé en otras opciones.

A ver, unas dudillas al respecto:

¿Puedes establecer tú, el tiempo de vida de esa sesión en concreto?

¿En esa sesión se puede guardar cualquier tipo de dato? Como por ejemplo, ¿Un objeto DOMDocument o un array de datos?

¿Existe la manera de exportar esos datos a otras sesiones, o es necesario ejecutar el PHP que comenté en el primer post por cada inicio de sesión nueva?

Muchas gracias de nuevo!

:)
  #4 (permalink)  
Antiguo 30/05/2011, 08:00
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años, 6 meses
Puntos: 1517
Respuesta: Ejecutar PHP al arrancar el servidor web

1. Sí, te recomiendo una leída al manual http://www.php.net/manual/en/book.session.php
2. Sí, aunque sería bueno que usaras serialize para almacenar los datos y unserialize cuando los fueras usar para que así no te de problemas cuando los transportes.
3. Las sesiones se guardan en el servidor y lo que se envia al navegador es el id de la sesión, para que por cada petición el servidor reconozca que sesión le pertenece a qué usuario y navegador. Por lo tanto no es necesario guardar los datos en otras sesiones, ya que la tienes siempre almacenado en el servidor hasta que caduque la sesiones por tiempo o porque haya cerrado el navegador. Te recomiendo la lectura del manual y así te puedas desenvolver.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #5 (permalink)  
Antiguo 30/05/2011, 08:14
 
Fecha de Ingreso: enero-2011
Ubicación: Bilbao
Mensajes: 18
Antigüedad: 13 años, 11 meses
Puntos: 0
Respuesta: Ejecutar PHP al arrancar el servidor web

Gracias abimaelrc,

Voy a echarle un buen ojo y si me surgen más dudas sin resolver vuelvo aquí


Etiquetas: dom, embebidos, lighttpd, xml
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 03:28.