Atributo :: almacenado en caché

Los resultados de las subrutinas de caché fácilmente usando un atributo en caché
Descargar ahora

Atributo :: almacenado en caché Clasificación y resumen

Anuncio publicitario

  • Rating:
  • Licencia:
  • Perl Artistic License
  • Precio:
  • FREE
  • Nombre del editor:
  • Thermeon Europe
  • Sitio web del editor:
  • http://search.cpan.org/~osfameron/

Atributo :: almacenado en caché Etiquetas


Atributo :: almacenado en caché Descripción

Los resultados de las subrutinas de caché fácilmente usando un atributo en caché En muchas aplicaciones, incluidas las aplicaciones web, los datos de almacenamiento en caché se utilizan para ayudar a escalar los sitios, comercializando una leve falta de inmediatez en resultados con una carga más baja en DB y otros recursos. Sin embargo, haremos algo como este sub my_Qery {My ($ yo,% pars) = @_; # Obtener un caché My $ cache = $ auto-> get_cache; # Generar una llave: por ejemplo con% pars (foo => 1), podríamos usar # la clave "my_query: foo = 1"; My $ KEY = $ auto-> get_key (% pars); mi resultado de $; # Compruebe si ya hemos almacenado en caché esta llamada y regresamos, si así ($ resultado = $ caché-> Obtenga ($ Tecla)) {WARN "Hit de Cache para $"; Devolver $ resultado; } # Las siguientes líneas son lo que esta subrutina es / en realidad / haciendo $ resultado = $ auto-> caro_operation; # ... Procesamiento adicional según lo requerido # Establezca el resultado en el caché para accesos futuros $ Cache-> Set ($ KEY, $ resultado, 20); # código duro un tiempo de caché aquí devuelve $ resultado; } La lógica de almacenamiento en caché se repite la placa de caldera y, peor, realmente no tiene nada que ver con lo que estamos tratando de lograr aquí. Con atributo :: Cached Habíamos escrito esto como: Sub GetCache {My $ Self = Shift; Devolver $. # ... Procesamiento adicional según sea necesario devolución $ resultado; } SINOPSIS SUB GETCACHE {DEVOLUCIÓN $ GLOBAL_CACHE} Sub foo: almacenado en caché (60) {...} Sub Barra: Cached (Time => 30, Key => Keygen) {...} # O suministre un caché específico sub baz: Cached (Tiempo => 20, cache => $ cache) {...} Requisitos: · Perl


Atributo :: almacenado en caché Software relacionado