semian
semian copied to clipboard
Investigate a possible Memcached adapter.
cc @Sirupsen
The memcached client already does some circuit break-like logic, so we'll have to investigate that and possibly disable it.
We can absorb this work too given memcached is the only outstanding driver we're interested in.
:heart_eyes: , make sure to check the existing logic, the default behaviour in the gem to auto-eject may be sufficient.
Is a memcache adapter something that is still on your radar (or possibly already in existence :stuck_out_tongue:)?
@jacobbednarz the memcached client has default sane-ish behaviour on failures, with a simple circuit breaker implementation.
Thanks for the link @Sirupsen. We're on petergoldstein/dalli so it's probably a better idea to move to another client with this built in instead of adding a semian adapter to handle it.
@jacobbednarz or submit a dalli adapter here :) up to you.
I'd be happy to review a Dalli adapter. Looking at Dalli's source it has like most clients a nice chokepoint for Semian to integrate itself: https://github.com/petergoldstein/dalli/blob/65a5a8cbf4b6993d298eb9fab8bbd0884c673bef/lib/dalli/client.rb#L353-L369
So it shouldn't be too hard.
Could do @Sirupsen. I was a little unsure where to draw the line with adapters and whether it would be better in the long run to have it handled in the client itself or within semian. I haven't come to a definitive answer just yet so I'll have a look at writing a dalli adapter and go from there.
Appreciate the link @byroot! Saved me some time digging. :smile: