共計 1334 個字符,預計需要花費 4 分鐘才能閱讀完成。
自動寫代碼機器人,免費開通
丸趣 TV 小編給大家分享一下 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 有什么區別有了一定的了解,想了解更多相關知識,歡迎關注丸趣 TV 行業資訊頻道,感謝各位的閱讀!
向 AI 問一下細節
丸趣 TV 網 – 提供最優質的資源集合!