From Fedora Project Wiki

m (Add Category)
m (SOP Formatting)
Line 1: Line 1:
= memcached - SOP =
{{header|infra}}
{{shortcut|ISOP:MEMCACHED}}
 
Our memcached setup is currently only used for wiki sessions.  With mediawiki, sessions stored in files over NFS or in the DB are very slow.  Memcached is a non-blocking solution for our session storage.


== Contact Information ==
== Contact Information ==
Line 11: Line 14:


Purpose: Provide caching for Fedora web applications.
Purpose: Provide caching for Fedora web applications.
== Description ==
Our memcached setup is currently only used for wiki sessions.  With mediawiki, sessions stored in files over NFS or in the DB are very slow.  Memcached is a non-blocking solution for our session storage.


== Checking Status ==
== Checking Status ==

Revision as of 20:16, 17 February 2009

Shortcut:
ISOP:MEMCACHED

Our memcached setup is currently only used for wiki sessions. With mediawiki, sessions stored in files over NFS or in the DB are very slow. Memcached is a non-blocking solution for our session storage.

Contact Information

Owner: Fedora Infrastructure Team

Contact: #fedora-admin, sysadmin-main, sysadmin-web groups

Location: PHX

Servers: app1, app2

Purpose: Provide caching for Fedora web applications.

Checking Status

Our memcached instances are currently firewalled to only allow access from wiki application servers. To check the status of an instance, use:

echo stats | nc app{1,2} 11211

from an allowed host.

Restarting Memcached

Note that restarting an memcached instance will drop all sessions stored on that instance. As mediawiki uses hashing to distribute sessions across multiple instances, restarting one out of two instances will result in about half of the total sessions being dropped.

To restart memcached:

sudo /etc/init.d/memcached restart

Configuring Memcached

Memcached is currently setup as a module in the puppet git repo. The main two tunables are the MAXCONN (the maximum number of concurrent connections) and CACHESIZE (the amount memory to use for storage). These variables can be set through $memcached_maxconn and $memcached_cachesize in puppet. Additionally, other options (as described in the memcached manpage) can be set via $memcached_options.