Mongodb EntityStore #49

wants to merge 2 commits into


None yet

4 participants



I've updated the EntityStore side of Rack::Cache to support a MongoDB entitystore. This strikes me as ideal for deployment scenarios such as Heroku, when you want the benefit of having a central cache store but don't want the cost of having to pay for large Memcached instances. MongoDB is also persistent, keeping the cache warm through resets/failure etc.

I haven't changed any of the methods/interface/api of the existing features, and using it is as simple as passing a:

:entitystore => ENV['MONGO_URI']

to Rack::Cache, or you can pass a Mongo::DB object directly in. I've updated all the tests, and it passes. I didn't implement the MetaStore in Mongo, as it seemed less important due to it's smaller size.

Hope you like it, I'd be delighted to get any feedback on it as well!




Uggh, sorry @jgwmaxwell. I still haven't had a chance to look over this diff. It's on my list. Anything to report since submitting the pull request? Are you using this store anywhere today?


Hi, sorry, been ill for a while and off the computer.

Yeah, it's in use on to cache the images the site creates, not been high traffic, but it is working well and hasn't missed a beat there. The other two places I am using it are on Intranets, and thus not postable.

It just gets on with it the way you'd expect - seems to be working fine to me?


Hi, @rtomayko. Are you going to merge it? It seems pretty nice!

grosser commented Oct 8, 2015

closing since nobody needs that anymore ...

@grosser grosser closed this Oct 8, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment