如果要找这类的SDK,第一反应应该直奔官网,找一下看下有什么推荐。先找最权威的回答,找不到再尝试民间方案。
就Redis来说,官方已经提供了一个列表包括市面上绝大多数语言的SDK,可以参考以下网址看Java所支持的SDK
就这份表格来说是截止至今天的,未来还可能会增加。
市面上如果搜索Redis基于Java客户端,应该最多的是Jedis,这个在GitHub上非常的火。下面再列出其余两款客户端,再GitHub上都与非常详细的Wiki文档。同时也是官方推荐的几个客户端。
- Jedis:https://github.com/xetorthio/jedis/wiki
- Iettuce:https://github.com/lettuce-io/lettuce-core/wiki
- Redisson:https://github.com/redisson/redisson/wiki
由于Redis的历史原因,在早期还不支持集群,所以这些客户端都各自实现了分片和集群功能,可以通过相关的Wiki来进行。
这些客户端还可以和Spring集成,官方也提供了相关示例。虽然Spring中也提供基于Redis的库,在业务上需要自己权衡性能去选择。
对于使用上我建议将通用的部分封装成统一方法,至少这样下次要替换库时,业务代码可以不用修改。