Provided by: libjifty-dbi-perl_0.78-3_all bug

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 Jifty::DBI::Record 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 Jifty::DBI::Record to add support for caching.

   load_by_cols
       Overrides the implementation from Jifty::DBI::Record 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 Cache::Memcached 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

       Jifty::DBI, Jifty::DBI::Record