溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

redis框架中Jedis、Lettuce、Redisson有什么區(qū)別

發(fā)布時間:2020-11-19 14:01:42 來源:億速云 閱讀:5256 作者:小新 欄目:關系型數(shù)據(jù)庫

小編給大家分享一下redis框架中Jedis、Lettuce、Redisson有什么區(qū)別,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!

Redis官方對Java語言的封裝框架推薦有十多種,主要有:Jedis、Lettuce、Redisson。

幾個框架的對比

三個框架都是在Java中對Redis操作的封裝。

1. Jedis

github: github.com/xetorthio/j…

Jedis是Redis的Java實現(xiàn)的客戶端,其API提供了比較全面的Redis命令的支持。支持基本的數(shù)據(jù)類型如:String、Hash、List、Set、Sorted Set。

優(yōu)點:比較全面的提供了Redis的操作特性,相比于其他Redis 封裝框架更加原生。

編程模型: 使用阻塞的I/O,方法調用同步,程序流需要等到socket處理完I/O才能執(zhí)行,不支持異步操作。Jedis客戶端實例不是線程安全的,所以需要通過連接池來使用Jedis。

2. Lettuce

官網(wǎng):lettuce.io/
github: github.com/lettuce-io/…

高級Redis客戶端,用于線程安全同步,異步和響應使用,支持集群,Sentinel,管道和編碼器。

優(yōu)點:適合分布式緩存框架。

編程模型:基于Netty框架的事件驅動的通信層,其方法調用是異步的。Lettuce的API是線程安全的,所以可以操作單個Lettuce連接來完成各種操作。

3.Redisson

官網(wǎng): redisson.org/
github: github.com/redisson/re…

Redisson實現(xiàn)了分布式和可擴展的Java數(shù)據(jù)結構。Redisson不僅提供了一系列的分布式Java常用對象,基本可以與Java的基本數(shù)據(jù)結構通用,還提供了許多分布式服務。

優(yōu)點: 促使使用者對Redis的關注分離,讓使用者能夠將精力更集中地放在處理業(yè)務邏輯上,提供很多分布式相關操作服務,例如,分布式鎖,分布式集合,可通過Redis支持延遲隊列。

第三方框架整合:

提供了和Spring框架的各項特性類似的,以Spring XML的命名空間的方式配置RedissonClient實例和它所支持的所有對象和服務

在Redis的基礎上實現(xiàn)了Java緩存標準規(guī)范,并完整的實現(xiàn)了Spring框架里的緩存機制

提供了Spring Session會話管理器的實現(xiàn)

編程模型:基于Netty框架的事件驅動的通信層,其方法調用是異步的。Redisson的API是線程安全的,所以可以操作單個Redisson連接來完成各種操作。

4.總結

Jedis中的方法調用是比較底層的暴露的Redis的API,也即Jedis中的Java方法基本和Redis的API保持著一致,了解Redis的API,也就能熟練的使用Jedis。而Redisson中的方法則是進行比較高的抽象,每個方法調用可能進行了一個或多個Redis方法調用。

看完了這篇文章,相信你對redis框架中Jedis、Lettuce、Redisson有什么區(qū)別有了一定的了解,想了解更多相關知識,歡迎關注億速云行業(yè)資訊頻道,感謝各位的閱讀!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經查實,將立刻刪除涉嫌侵權內容。

AI