Add redis cache adapter #211
Merged
Conversation
docker-compose run --rm app bundle exec rake test
use marshal to handle objects with the setex redis command
use the adapter in the let block to pass into the shared helpers
spec/helper.rb
Outdated
@@ -6,6 +6,7 @@ | |||
|
|||
require 'rubygems' | |||
require 'bundler' | |||
require 'pry' |
camallen
Jan 6, 2017
Author
Contributor
happy to remove this if it's not used widely
happy to remove this if it's not used widely
2100398
into
jnunemaker:master
1 check was pending
1 check was pending
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
closes #142 - first attempt at adding a redis cache adapter. I've added some testing setup that was broken and documented running them via docker-compose.
I mimicked the dalli cache adapter almost entirely, i think the only choices i had to make were is this included in the flipper-redis gem and how to use the setex cmd (ttl) with redis. I chose yes and to marshal objects when storing / retrieving, limited testing on this show the features serializing in and out of redis ok. Happy to change the implementation if you want.
Side note: when testing in the pry debugger, the inspect method on a feature would call the
adapter.get
here and warm the cache which took me a while to figure out. Maybe i should just make a note of this in the readme / wiki...?