Support » Plugin: Redis Object Cache » Great but – Documentation lacks examples to make novice setup easy.

  • Thomas Jarvis

    (@thomasjarvisdesign)


    Great to be able to install on my plesk service via Docker. I use the Bitinami version for ease – because the docker variables exist in a tutorial on the web. I have a few sites running and WordPress health has detected that Object cache is running and enabled.

    The good parts
    Once running it is easy to apply it to multiple sites sharing the server. I intend on adding Redis to all sites to meet WordPress new Site Health recommendation – add object caching.

    The bad parts – setting it up!
    Poor documentation for novice users. Lack of example configs from Redis, Docker and Plesk documentation. Seriously – Its bad, vague and does not cover the points where users would typically get stuck.

    For example the lack of pre-formatted code snippets to cover the following makes the setup process inaccessible to people new to REDIS:

    • An official set of WP-Config.php snippets correctly formatted would be fantastic. I dont mean a list of constants (which is available) the average copy paste user just wants to copy paste snippets that are correctly formatted. define(‘WP_REDIS_DATABASE’, 3 );
      define(‘WP_REDIS_SELECTIVE_FLUSH’, true);
      As above – Written as used for people that dont know what these statements are supposed to look like
    • An official set of correctly formatted variables that Redis mounted via Docker will accept would be fantastic – Hence using the bitinami version – I found the snippets I needed without using a custom redis.conf file.
    • Instructions on how and where to place your Plesk redis.conf file would be extremely useful to novice users. There is no documentation covering the file structure Docker users for Redis or the file strucutre used for redis in general.

    Poor WordPress setup guides
    The WordPress plugin does not come with a easy setup guide.
    No mention of what to do with servers with multiple sites.
    For example adding Selective Flush or giving each site its own Redis Database number to avoid clashes. These should be the defaults and available as snippets with explanation.

Viewing 5 replies - 1 through 5 (of 5 total)
  • Plugin Author Till Krüss

    (@tillkruess)

    Hi Thomas, good point. Do you want to contribute an extensive README with all the instructions you desire on GitHub?

    Thread Starter Thomas Jarvis

    (@thomasjarvisdesign)

    @tillkruesss
    I’d be happy to contribute if I knew what all of the variables are. But I do not. I have REDIS running but it could possibly be better optimised if I knew what all of the information in my previous post.

    This is the guide that I followed that works out of the box: Docker Redis/Bitnami
    https://www.plesk.com/blog/product-technology/optimize-wordpress-redis-docker/
    With the addition of

    the following WP-Config lines:

    // Unique key for website you can use the salt generator if you wish
    define('WP_CACHE_KEY_SALT', 'yourdomainname.co.uk:' );
    
    // Your_Redis_Password_Specified_In_Redis_Variables via docker
    define('WP_REDIS_PASSWORD', 'password' ); 
    
    //Use a local IP addressI chose a different local IP as set in Redis Variables via docker below is an example try giving is 127.0.0.999 or random to avoid clashes
    define('WP_REDIS_HOST', '127.0.0.1');
    
    // Gave Redis a dedicated port no in redis settings via docker
    define('WP_REDIS_PORT', '6379' );
    
    // Give each site a database Number so that when cache is cleared it does not clear the entire docker container
    define('WP_REDIS_DATABASE', 1 );
    
    // Clear the cache every 30 minutes this is in seconds. Can set to 12 hours if you want for smaller sites. This is to prevent the REDIS cache becoming full. I limited the size of the cache in Docker Redis settings to 1024mb to prevent it eating the server.
    define('WP_REDIS_MAXTTL', '1800');
    
    // This variable is supposed to make it so when cache is flushed it only flushes in relation to the WP_CACHE_KEY_SALT - Preventing the entire container getting cleaned instead of just one site. Only necessary if you run more than one site.
    define('WP_REDIS_SELECTIVE_FLUSH', true);

    The standard Docker Redis latest version does not work because the default config file is set to allow all connections. I get a failed to connect warning in the WP plugin because of this. The only way to fix this is to run a custom redis.conf file which is poorly documented. I tried the same setup using the extra docker variables in the Bitnami version (see link above to guide) in the standard version and it just doesnt work.

    Plugin Author Till Krüss

    (@tillkruess)

    Do you want to open a pull request with just the most basic set up instructions and I’ll extend it to the less common scenarios?

    Thread Starter Thomas Jarvis

    (@thomasjarvisdesign)

    That would be great if you could for other users. Although the setup I have suggested above is a pretty common situation for Plesk users who want to use Docker to contain REDIS. In my oppinion the easiest way to install REDIS without using SSH.

    A great example of the documentation problem where another user has encountered an issue.
    https://wordpress.org/support/topic/object-cache-and-wp-predefined-constants/
    Here a different WP Constant has been suggested that I dont think is in the documentation or setup guides.

    Thank you.

    Plugin Author Till Krüss

    (@tillkruess)

    Yeah, I’d be delighted to finish the guide for more complex scenarios.

    You can open a pull request to the README here: https://github.com/rhubarbgroup/redis-cache

    I’ll make sure it will be in all the right places.

Viewing 5 replies - 1 through 5 (of 5 total)
  • The topic ‘Great but – Documentation lacks examples to make novice setup easy.’ is closed to new replies.