Verify memcached works before installing Magento

Adobe recommends testing memcached to make sure it works before you install Commerce. Doing so takes only a few minutes and can simplify troubleshooting later.

Verify memcached is recognized by the web server

To verify that memcached is recognized by the web server:

  1. Create a phpinfo.php file in the web server’s docroot:

    <?php
    // Show all information, defaults to INFO_ALL
    phpinfo();
    
  2. Go to that page in your web browser. For example:

    http://192.0.2.1/phpinfo.php
    
  3. Make sure memcached displays as follows:

    Confirm memcached is recognized by the web server

    Verify you are using memcached version 3.0.5 or later.

    If memcached does not display, restart the web server and refresh the browser page. If it still does not display, verify you installed the php-pecl-memcached extension.

Verify memcached can cache data

This test uses a PHP script to verify that memcached can store and retrieve cache data.

For more information about this test, see How To Install and Use Memcache on Ubuntu tutorial.

Create cache-test.php in the web server’s docroot with the following contents:

$meminstance = new Memcached();

$meminstance->addServer("<memcached hostname or ip>", <memcached port>);

$result = $meminstance->get("test");

if ($result) {
    echo $result;
} else {
    echo "No matching key found. Refresh the browser to add it!";
    $meminstance->set("test", "Successfully retrieved the data!") or die("Could not save anything to memcached...");
}

Where <memcached hostname or ip> is either localhost, 127.0.0.1, or the memcache hostname or IP address. The <memcached port> is the listen port; by default, 11211.

Go to that page in a web browser. For example

http://192.0.2.1/cache-test.php

The first time you go to the page, the following displays: No matching key found. Refresh the browser to add it!

Refresh the browser. The message changes to Successfully retrieved the data!

Finally, you can view the memcache keys using Telnet:

telnet localhost <memcache port>

At the prompt, enter

stats items

The result is similar to the following:

STAT items:2:number 1
STAT items:2:age 106
STAT items:2:evicted 0
STAT items:2:evicted_nonzero 0
STAT items:2:evicted_time 0
STAT items:2:outofmemory 0
STAT items:2:tailrepairs 0
STAT items:2:reclaimed 0
STAT items:2:expired_unfetched 0
STAT items:2:evicted_unfetched 0

Flush memcached storage and quit Telnet:

flush_all
quit
Previous pagememcached on CentOS
Next pageSplit database overview

Commerce