Today I released first version of my Redis client. For some reasons I wasn’t satisfied with official Redis client so I decided to make my own. There are main goals I wanted to achieve:
- first class JRuby support
- connection pooling support out-of-the-box
- “good enough” performance for the most use cases
- mimic Redis API as close as possible. By this I mean that if you see
HMSETcommand in Redis official documentation there should be
hmsetcommand in ruby client. With the same arguments (if possible). Moreover at the moment there is no response casting at all. So if redis server returns
1you will get exactly
booleanresult. Maybe this will be changed in the future but I will do this only when will have a vision how to make it consistent and straightforward.
According to my personal goals, I wanted to make useful pet-project and to get some practice in something I don’t do on a daily basis.
I have to say that
oxblood is used in production for a couple of months and it’s working pretty good.
Here you can find some benchmark results.
At the moment I’m fine with the numbers I’ve got (if I did everything right).
I would greatly appreciate any help with the project. Please try it out, open issues, ask questions, write docs, open pull requests, do some more benchmarks and so on.
v0.2.0 is out and available in RubyGems. See CHANGELOG for details.blog comments powered byDisqus