This feature allows the use of a memory back end for the caches used in OTRS. It makes possible to allocate the entire cache through the Round Robin method on several memcached servers and provides smooth deployment of OTRS in a high-availability environment.
The number of memcached servers that can be used is unlimited. After proper setup of the memcached servers, you can use OTRS to configure which of them should be used by OTRS. We strongly recommend that configuration is carried out only by our OTRS consultants.
The MemcachedFast OTRS cache back end uses the CPAN module Cache::Memcached::Fast, which is a Perl client for memcached, a memory cache daemon.
Memcached is a free and open source, high-performance, distributed memory object caching system. It is often used to speed up big dynamic database-driven websites by caching data and objects in RAM to reduce the number of times an external data source (such as a database or API) must be read.
Basics
Note
You need to change the Cache::Module
setting to use MemcachedFast
, if you have not done this yet.
It is required to have at least 1 memcache server. It is recommended to have more (smaller) servers than a single big one. High availability clusters will definitely need more than 1 server. Only 1 server means a single point of failure.
It is recommended to use the latest versions of the required CPAN modules Storable
and Cache::Memcached::Fast
.
Note
Memcached does not handle authentication and replication.
Warning
Do not use patches that will install replication, like repcached
. It is not supported.
Memory Settings
By default, memcached generally only sets aside a small amount of RAM for the cache. This may differ depending on the operating system or Linux distribution, but it varies between 64 MB and 512 MB. The more memory you can give to memcached, the better is. At least 4 GB is required for OTRS. Large deployments may want to give even more.
A rough guideline from our experience for a front end server without database is to divide the memory equally between the OS, Apache and memcached (1/3).
To increase the amount of memory available to memcached, modify the value passed along with -m
. This value is in megabytes. For example, to specify 2 GB of cache space, pass -m 2048
. Your setup most likely has a configuration file where you can set this. On Linux, memcached stores its settings in /etc/memcached.conf
.
Note
Restart the memcache daemon, when changing the configuration.
Security
Memcached does not handle authentication. The user is responsible for data security. So make sure to secure your network (e.g. subnetting, separated network or firewalling).
But also make sure that each OTRS instance can communicate with each memcached server.
Monitoring
It is recommended to use monitoring tools, like phpmemcacheadmin. There are also extensions for Nagios.