[Madrid-pm] Opción que imponga menos carga al servidor

DervishD bugs en dervishd.net
Mar Oct 16 08:39:40 PDT 2007


    Hola Salvador :)

 * Salvador Fandiño <sfandino en yahoo.com> dixit:
> > Ya, ya lo sé, si eso es precisamente lo que ya tengo escrito ;)) Mi
> > duda es si File::Find sería más rápido o si lo de tener una lista de
> > ficheros era la solución que menos carga impone.
> >
> > Mi solución con una lista lo que pretende evitar es hacer los
> > opendir.
>  
> Pues si lo unico que te importa es el rendimiento, obviamente, leerlo
> de una lista va a ser mas eficiente, especialmente si se trata de un
> sistema de ficheros con muchos subdirectorios.

Puedo "aplanar" un poco la jerarquía, un nivel como mucho, pero así y
todo habrá bastantes subdirectórios.

> El problema de tener el listado en un fichero independiente es que
> tiene que estar siempre sincronizado lo que dependiendo del tipo de
> aplicacion puede ser un gran problema o no.

Lo bueno es que ese fichero siempre estará sincronizado. El script que
suba los ficheros nuevos o modificados sincroniza automaticamente y sube
el nuevo índice. No es la octava maravilla de la atomicidad pero eso lo
tengo más o menos controlado.

> Mi consejo seria que utulizases la solucion que recorre el sistema de
> ficheros, que es mas robusta ya que no depende de ningun proceso
> externo y solo si ves que tienes problemas de rendimiento te pasases a
> la otra.

Ahí está, Salvador, por eso estaba interesado en recorrer todo el
sistema, porque es una solución más robusta. Digamos que elimina una
responsabilidad del script local.

El sistema está dividido en dos partes: la local y la remota. La local
es la que hace el trabajo "sucio" de crear unos índices, preprocesar el
texto, comprobar algunos errores, etc. y sincronizar el índice de
ficheros, actualizar un repositorio SVN, etc. además de subir al
servidor los contenidos nuevos cuando los haya. La parte remota sólo
recorre el sistema de ficheros (o procesa la lista de ficheros) y genera
las páginas bajo demanda. Probablemente en el futuro también cachee
algunos contenidos, no lo sé. El caso es que la parte remota tiene que
imponer la menor carga posible, así que todo lo que se pueda pasar al
script local es bienvenido.

Lo que tú dices es cierto: al usar la lista de ficheros estoy cambiando
robustez por rendimiento, con lo cual tengo interés en saber cuánto
rendimiento estoy ganando por la falta de robustez que pago, para ver si
merece la pena. A priori sí que la merece, pero supongo que tendré que
hacer alguna prueba. Espero que los de mi alojamiento estén dispuestos a
hacerme un benchmark XDDD

Gracias por tus consejos :)

    Raúl Núñez de Arenas Coronado

-- 
Linux Registered User 88736 | http://www.dervishd.net
It's my PC and I'll cry if I want to... RAmen!
We are waiting for 13 Feb 2009 23:31:30 +0000 ...


Más información sobre la lista de distribución Madrid-pm