Redis官方對Java語言的封裝框架推薦有十多種,主要有:Jedis、Lettuce、Redisson。
幾個框架的比較
三個框架都是在Java中對Redis操作的封裝。
推薦:《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框架有哪些的詳細內容。更多資訊請關注PHP中文網其他相關文章!