温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

redis框架中Jedis、Lettuce、Redisson有什么区别

发布时间:2020-11-19 14:01:42 来源:亿速云 阅读:5258 作者:小新 栏目:关系型数据库

小编给大家分享一下redis框架中Jedis、Lettuce、Redisson有什么区别,希望大家阅读完这篇文章后大所收获,下面让我们一起去探讨吧!

Redis官方对Java语言的封装框架推荐有十多种,主要有:Jedis、Lettuce、Redisson。

几个框架的对比

三个框架都是在Java中对Redis操作的封装。

1. Jedis

github: github.com/xetorthio/j…

Jedis是Redis的Java实现的客户端,其API提供了比较全面的Redis命令的支持。支持基本的数据类型如:String、Hash、List、Set、Sorted Set。

优点:比较全面的提供了Redis的操作特性,相比于其他Redis 封装框架更加原生。

编程模型: 使用阻塞的I/O,方法调用同步,程序流需要等到socket处理完I/O才能执行,不支持异步操作。Jedis客户端实例不是线程安全的,所以需要通过连接池来使用Jedis。

2. Lettuce

官网:lettuce.io/
github: github.com/lettuce-io/…

高级Redis客户端,用于线程安全同步,异步和响应使用,支持集群,Sentinel,管道和编码器。

优点:适合分布式缓存框架。

编程模型:基于Netty框架的事件驱动的通信层,其方法调用是异步的。Lettuce的API是线程安全的,所以可以操作单个Lettuce连接来完成各种操作。

3.Redisson

官网: redisson.org/
github: github.com/redisson/re…

Redisson实现了分布式和可扩展的Java数据结构。Redisson不仅提供了一系列的分布式Java常用对象,基本可以与Java的基本数据结构通用,还提供了许多分布式服务。

优点: 促使使用者对Redis的关注分离,让使用者能够将精力更集中地放在处理业务逻辑上,提供很多分布式相关操作服务,例如,分布式锁,分布式集合,可通过Redis支持延迟队列。

第三方框架整合:

提供了和Spring框架的各项特性类似的,以Spring XML的命名空间的方式配置RedissonClient实例和它所支持的所有对象和服务

在Redis的基础上实现了Java缓存标准规范,并完整的实现了Spring框架里的缓存机制

提供了Spring Session会话管理器的实现

编程模型:基于Netty框架的事件驱动的通信层,其方法调用是异步的。Redisson的API是线程安全的,所以可以操作单个Redisson连接来完成各种操作。

4.总结

Jedis中的方法调用是比较底层的暴露的Redis的API,也即Jedis中的Java方法基本和Redis的API保持着一致,了解Redis的API,也就能熟练的使用Jedis。而Redisson中的方法则是进行比较高的抽象,每个方法调用可能进行了一个或多个Redis方法调用。

看完了这篇文章,相信你对redis框架中Jedis、Lettuce、Redisson有什么区别有了一定的了解,想了解更多相关知识,欢迎关注亿速云行业资讯频道,感谢各位的阅读!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI