Help-Site Computer Manuals
Software
Hardware
Programming
Networking
  Algorithms & Data Structures   Programming Languages   Revision Control
  Protocols
  Cameras   Computers   Displays   Keyboards & Mice   Motherboards   Networking   Printers & Scanners   Storage
  Windows   Linux & Unix   Mac

Jifty::DBI::Record::Memcached
records with caching behavior

Jifty::DBI::Record::Memcached - records with caching behavior


NAME

Jifty::DBI::Record::Memcached - records with caching behavior


SYNOPSIS


  package Myrecord;

  use base qw/Jifty::DBI::Record::Memcached/;


DESCRIPTION

This module subclasses the main the Jifty::DBI::Record manpage package to add a caching layer.

The public interface remains the same, except that records which have been loaded in the last few seconds may be reused by subsequent get or load methods without retrieving them from the database.


METHODS

load_from_hash

Overrides the implementation from the Jifty::DBI::Record manpage to add support for caching.

load_by_cols

Overrides the implementation from the Jifty::DBI::Record manpage to add support for caching.

_cache_config

You can override this method to change the duration of the caching from the default of 5 seconds.

For example, to cache records for up to 30 seconds, add the following method to your class:


  sub _cache_config {

      { 'cache_for_sec' => 30 }

  }

memcached_config

Returns a hash containing arguments to pass to the Cache::Memcached manpage during construction. The defaults are like:


  (

      services => [ '127.0.0.1:11211' ],

      debug    => 0,

  )

You may want to override this method if you want a customized cache configuration:


  sub memcached_config {

      (

          servers => [ '10.0.0.15:11211', '10.0.0.15:11212',

                       '10.0.0.17:11211', [ '10.0.0.17:11211', 3 ] ],

          debug   => 0,

          compress_threshold => 10_000,

      );

  }

cache_key_prefix

Returns the prefix we should prepend to all cache keys. If you're using one memcached for multiple applications, you want this to be different for each application or they might end up mingling data.


AUTHOR

Matt Knopp <mhat@netlag.com>


SEE ALSO

the Jifty::DBI manpage, the Jifty::DBI::Record manpage

Programminig
Wy
Wy
yW
Wy
Programming
Wy
Wy
Wy
Wy