How to enable memcached caching in EnsEMBL

EnsEMBL uses standard installation of Memcached.

  1. Install memcached. Follow instructions on Memcached Wiki Page

  2. Start and test memcached on your memcached server.

    $ /path/to/memcached -p [PORT] -d
    telnet localhost [PORT]
    Trying 127.0.0.1...
    Connected to localhost.
    Escape character is '^]'.
    version
    VERSION 1.3.0
    quit Connection closed by foreign host.
    
  3. Enable memcached plugin in ensembl-webcode/Plugins.pm file:

    'EnsEMBL::Memcached' => $SiteDefs::ENSEMBL_SERVERROOT.'/public-plugins/memcached'
    
  4. Override parameters defined in Memcached plugins (especially SERVER(s) and PORT(s)) in your site plugin.

    package EnsEMBL::YourPlugin::SiteDefs;
    
    use strict;
    
    sub update_conf {
      $SiteDefs::ENSEMBL_MEMCACHED = { servers => [ 'host1:11511', 'host2:11511', 'host3:11511' ] };
    
      # ... other customisations here
    }
    
    1;