2010/2/20 Diego Torres <[email protected]>:
> Hola Lista,
>
> estoy intentando hacer algunas optimizaciones en mis consultas o cacheando
> cuando se puede. Estoy usando cacheo en disco. El problema es que en algunos
> casos, como el que escribo a continuacion, siempre falla el cach (rails cach
> miss).
>
Puntos a que tengas en cuenta:
Cacheo en disco no es multi-thread o seguro cuando multiples
instancias (mongrels o Passenger) acceden a los archivos.
Te recomiendo cambies por memcache para cachear en memoria.
> Tengo la siguiente linea:
>
> conditions=Rails.cache.fetch("f_dest#{f_destination.iata_code}"){FCondition.find(:all,
> :conditions=>["start_date<=? and end_date>= ?", Date.today, Date.today])}
>
> La primera vez me escribe el cache correctamente en el directorio indicado
> con la clave que le puse.
>
> Luego, cada vez que intenta recuperar el resultado cacheado falla y vuelve a
> recalcular.
>
> Que estoy haciendo mal aca?? Alguna idea.
>
que es f_destination? este se define siempre o este cambia entre las consultas?
Como estas usando el FileStore para el cache, y este no expira, yo
trataria de aislar el problema y de fijar un key del cache que no
dependa del valor de un query anterior.
Tambien, fijarle una expiracion, pero el FileStoreCache no lo soporta.
--
Luis Lavena
AREA 17
-
Perfection in design is achieved not when there is nothing more to add,
but rather when there is nothing more to take away.
Antoine de Saint-Exupéry
_______________________________________________
Ruby mailing list
[email protected]
http://lista.rubyargentina.com.ar/listinfo.cgi/ruby-rubyargentina.com.ar