Spring Data Redis整體介紹 (一)

來源:互聯網
上載者:User

標籤:為什麼   刪除   src   down   代碼   大致   架構   str   api   

為什麼使用Spring Data Redis

首先Spring Data RedisSpring 架構提供的用於操作Redis的用戶端。
Spring架構是一個全棧Java程式架構,通過DIAOP和便攜的服務抽象提供一個輕量的容器和非侵入編程模型支援。
NoSQL儲存為傳統的關係型資料庫提供了橫向擴充和速度上的替代,Key-Value儲存是目前NoSQL領域的主要成員。
Spring Data Redis(SDR)架構通過消除冗餘的、重複的整合代碼,使Spring程式能簡單的使用Redis的Key-Value儲存。

Spring Data Redis目前支援兩種驅動:Jedis和Lettuce,可以看成是這兩種驅動的統一封裝,以高度統一的形式屏蔽了底層驅動的操作細節,向使用者提供一種統一的API,大致結構如下:

![階層

Spring Data Redis整體結構

Spring Data RedisSpring Data家族的其他資料操作如:Spring Data JDBC,以類似的結構進行封裝,降低使用者的學習成本;只要使用過其中一種Spring Data技術,對其他的資料來源操作能依葫蘆畫瓢的進行,封裝的整體結構如下:

將封裝的層次分為4部分:
1) 底層的工廠層和串連層,這裡會依據驅動的不同而有不同的實現;串連層可以直接與Redis Server進行互動,採用位元據和命令進行。
2) 模板層是對串連層的進一步封裝,對Redis的每種資料類型,都封裝一個操作類,與Redis Server進行互動,如String類型的ValueOperations;而RedisTemplate持有所有類型操作的引用,所以可以直接通過定義RedisTemplate對Redis進行操作;RedisTemplate封裝了通用的操作,如刪除key,設定到期時間,對不同資料類型的操作通過具體的操作類進行。
3) 鍵綁定層是對模板層的更進一步封裝,每個類型的執行個體只能操作單一的索引值(執行個體化時已經指定了鍵)

系統要求與學習資料

Spring Data Redis的系統要求:Spring Data Redis 1.x --> JDK 1.6 + 、Redis 2.6.x +

常用的Redis Java用戶端有:Jedis、Lettuce、Redison、Spring Data Redis,對應的學習資料如下:
Jedis:https://github.com/xetorthio/jedis/wiki
Lettuce:https://github.com/lettuce-io/lettuce-core/wiki
Redison:https://github.com/redisson/redisson
SPR:https://docs.spring.io/spring-data/redis/docs/2.0.2.RELEASE/reference/html/
更多用戶端參照:http://www.redis.net.cn/clients/#java

Spring Data Redis整體介紹 (一)

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.