HackerOne users: Testing against this community violates our program's Terms of Service and will result in your bounty being denied.

Redis Cache Layer

Has anyone developed a Redis cache layer for Vanilla yet?

Add Pages to Vanilla with the Basic Pages app



  • x00x00 MVP
    edited March 2015

    If using it purely as cache layer, there isn't a much advantage over other cache layers. If redis is used as a data structure server it is then it has an advantage, but that it quite a big change in architecture.

    grep is your friend.

  • LincLinc Detroit Admin

    I'm no caching expert, but my understanding was as @x00 says. Redis would basically sit where memcached already does in our stack as a data caching layer, which would require code integration.

  • ShadowdareShadowdare r_j MVP
    edited March 2015

    It seems that Redis can basically replace Memcached entirely in practice because it's more robust and actively developed, while having more functionality and still being able to do the same thing. Notable advantages it has over Memcached includes more advanced data type support, built-in clustering functionality (supported by the developers), and persistence to disk.


    It would be great to see an implementation for Redis used at least as a cache layer, or even used in some parts of the framework as a data structure server as we move forward to allow us to improve scalability, but for now Memcached works just as well for what it's currently being used for in Garden.

    Just making this post to see if anyone has any experience with Redis and what other benefits implementing it may bring to the table for Garden.

    Add Pages to Vanilla with the Basic Pages app

  • @Shadowdare if you look in library core, you can see the cache types, with an abstract class class.cache.php. Given you already have a template. Why not develop it yourself?

    You already have a template.

    Once you have got it workign well. You could do a pull request.

    grep is your friend.

  • Didn't notice that it was an abstract class, @x00. Thanks for the tip!

    I'll try to develop a Redis cache layer and see how it works out.

    Add Pages to Vanilla with the Basic Pages app

  • Shadowdare - did you have any luck with this task?

  • ShadowdareShadowdare r_j MVP
    edited February 2016

    @djdrey, I had put this idea on hold since Vanilla 2.2 was about to be released a several months after I made the post, and haven't revisited it yet. Are you considering developing one on your own?

    Add Pages to Vanilla with the Basic Pages app

  • painejakepainejake Birmingham New

    Nothing on this since Feb so I'm going to pick it up. Been looking at dropping memcached at work in favour of Redis storage for sessions so will tan it out while its still fresh.

    Looking at the class.cache.php it really shouldn't take too long it's just when I had time to actually do it... I'll post patch/PR whatever here when I have something worth sharing and then if people could test that would be cool.

  • painejakepainejake Birmingham New

    Little update on this, I've got a very rough proof of concept sorted - It works. Just going through finishing it off then it needs tidying it up, adding support to auth with Redis etc.

    Thankfully I'm not too far off the coding standards either :pleased:

  • LincLinc Detroit Admin

    We'd be interested in seeing a pull request or issue collaboration about this. I know @initvector has expressed interest in adding Redis support so perhaps mention him on GitHub (same username) if you do.

  • @painejake any update on this?

Sign In or Register to comment.