carmine
carmine copied to clipboard
Redis Sentinel support
STATUS: Design is basically done, currently awaiting release of new Redis commands.json (https://github.com/antirez/redis-doc/blob/master/commands.json).
Looking good!! Any idea when this might be merged into master?
Hi Adam,
Just waiting on the addition of Sentinel commands to the json spec: https://github.com/antirez/redis-doc/blob/master/commands.json. Not sure what the ETA is on that (I'm guessing once the Sentinel spec itself is finalized).
In the meantime, I'd be happy to take a PR that manually updates the json spec if you or someone else would like to get this in ASAP.
Cheers!
This may be further off than expected, the Sentinel design still seems to be under pretty aggressive development: https://groups.google.com/forum/?fromgroups#!topic/redis-db/nb4o78CkhFk
So am waiting on 2 things at this stage:
- Spec itself to become concrete.
- Updated commands.json file.
Neither of these have an ETA, but I'll keep my ear to the ground and update when there's something to update about.
@ptaoussanis It's been a year since this issue has been updated -- any new info on this?
Hi Trevor,
That's mostly to do with the route Redis's development ended up going. I think Salvatore decided to prioritise Redis Cluster for a while, and development there ended up taking longer than expected.
For Carmine's part, I'm waiting on stabilisation of clear client specs. Haven't been following Sentinel developments much lately, so not sure how far off that still is.
In any event I'll be tied up with high-priority work for a few months at least - so PRs would likely be the best way of getting this in soon.
Cheers! :-)
I'll take a crack at it -- any pointers?
Hi Trevor,
Sure - first step would probably be the sentinel docs: http://redis.io/topics/sentinel http://redis.io/topics/sentinel-clients
The Sentinel branch here has absolutely gone stale but there may or may not be useful ideas in it still.
The Carmine code base as of 2.6 should be pretty easy to navigate since it just got an overhaul for upcoming Cluster support. Feel free to ping me if you've got any questions though!
Cheers :-)
@ptaoussanis What's still blocking this? It's a bummer that the main Redis client for Clojure only works with standalone instances. Let me know how I might help out.
@neverfox What's still blocking this?
Hey Roman, nothing in particular - just lack of interest. When I first looked at implementing this, the implementation spec kept changing. Actually only became stable semi recently, afaik.
At the moment don't have any need of Sentinel or Cluster myself though, and have my hands very full with other priorities - so support will need to come from a PR if anyone else is interested.
Hope that helps, cheers! :-)
+1 for this. We are moving one of our redis to Sentinel managed group. I wish Carmine could support it.
PRs welcome, otherwise happy to implement if someone wants to fund my time on this. Otherwise don't need Sentinel myself so unfortunately no other plans atm, sorry.
I wrote a library to make carmine support sentinel:
https://github.com/killme2008/carmine-sentinel
Someone may want to try it if you are interested. Feedback is welcome.
@killme2008 Thanks Dennis, will try take a look at the weekend. Cheers! :-)
Closing, a new implementation is on the v4 branch 👍