成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

前5個基于Redis的Java對象

存儲 Redis
Redis具有很多值得推薦的功能,包括速度,可伸縮性和可用性。但是,有一個問題是Redis不包括對Java之類的編程語言的內置支持。相反,用戶需要為Redis安裝第三方Java客戶端,例如Redisson。

 Redis具有很多值得推薦的功能,包括速度,可伸縮性和可用性。但是,有一個問題是Redis不包括對Java之類的編程語言的內置支持。相反,用戶需要為Redis安裝第三方Java客戶端,例如Redisson。

[[328825]]

Redisson是Redis Java客戶端,其中包含許多熟悉的Java對象,接口和集合,這使Java開發人員比以往任何時候都更容易地開始使用Redis。下面,我們將討論Radisson用戶所依賴的5個基于Redis的優秀Java對象。

1.Map

Java中的Map接口用于將鍵映射到值的對象。

Redisson使用RMap接口在Redis中實現Map 。旋轉地圖實現了所有的Redis的熟悉地圖的方法:containsKey(),containsValue(),get(),isEmpty(),keySet(),put(),putIfAbsent(),remove(),replace(),values(),等等。

以下是有關如何在Redisson中使用RMap接口的快速示例:

 

  1. RMap<String, SomeObject> map = redisson.getMap("anyMap"); 
  2. SmeObject prevObject = map.put("123", new SomeObject()); 
  3. SomeObject currentObject = map.putIfAbsent("323", new SomeObject()); 
  4. SomeObject obj = map.remove("123"); 

RMap接口包括對Async,Reactive和RxJava2的支持。此外,RMap還具有本地緩存​​和數據分區等功能,因此可以極大地加快讀取操作并提高可伸縮性。

 

2.Set

Java中的Set接口用于無重復值的元素的無序集合。

Redisson器具設置在Redis的與RSET接口。RSET實現所有的Redis的熟悉的設置方法:add(),addAll(),clear(),contains(),containsAll(),equals(),isEmpty(),remove(),removeAll(),size(),等等。

以下是有關如何在Redisson中使用RSet接口的快速示例:

 

  1. RSet<SomeObject> set = redisson.getSet("anySet"); 
  2. set.add(new SomeObject()); 
  3. set.remove(new SomeObject()); 

與RMap一樣,RSet也支持數據分區,以提高性能并加快讀/寫操作。另外,用戶可以為RMap中的元素定義驅逐策略(即每個條目的生存時間)。

3.holder

Java中的Holder類用于存儲指定類型的值,同時允許對該值進行副作用修改(例如,為了在Java中實現按引用調用)。

Redisson通過RBucket接口在Redis中實現了Holder類,該接口可以容納任何類型的對象。RBucket工具方法,如compareAndSet(),get(),getAndDelete(),getAndSet(),set(),size(),trySet(),等等。對象的最大大小為512兆字節。

以下是有關如何在Redisson中使用RBucket接口的快速示例:

 

  1. RBucket<AnyObject> bucket = redisson.getBucket("anyObject"); 
  2. bucket.set(new AnyObject(1)); 
  3. AnyObject obj = bucket.get(); 
  4. bucket.trySet(new AnyObject(3)); 
  5. bucket.compareAndSet(new AnyObject(4), new AnyObject(5)); 
  6. bucket.getAndSet(new AnyObject(6)); 

RBucket接口包括對Async,Reactive和RxJava2的支持。

 

4.Lock

Java中的Lock類用于“鎖定”對共享資源的訪問,以同步多個線程。鎖是多線程和分布式編程的關鍵部分,這就是為什么鎖在Redisson用戶中也很受歡迎的原因。

Redisson通過RLock接口在Redis中實現Lock類。RLOCK實現所有的Redis的熟悉鎖方法:lock(),lockInterruptibly(),tryLock(),unlock(),等等。

以下是有關如何在Redisson中使用RLock接口的快速示例:

 

  1. RLock lock = redisson.getLock("myLock"); 
  2. //傳統的鎖定方法 
  3. lock.lock(); 
  4. // 或獲取鎖定,并在10秒后自動將其解鎖 
  5. lock.lock(10, TimeUnit.SECONDS); 
  6. //或等待鎖獲取長達100秒  
  7. //并在10秒后自動將其解鎖 
  8. boolean res = lock.tryLock(100, 10, TimeUnit.SECONDS); 
  9. if (res) { 
  10.    try { 
  11.      ... 
  12.    } finally { 
  13.        lock.unlock(); 
  14.    } 

RLock接口包括對Async,Reactive和RxJava2的支持。Redisson還實現了各種類型的鎖,例如公平鎖,MultiLock,Redlock和ReadWriteLocks。

 

5.ExecutorService

Java中的ExecutorService接口用于異步執行Runnable和Callable對象。

Redisson實現了Redis的的ExecutorService的接口與RExecutorService接口。RExecutorService實現所有的Redis的熟悉的ExecutorService方法:invokeAll(),invokeAny(),isShutdown(),isTerminated(),shutdown(),shutdownNow(),submit(),等等。

以下是有關如何在Redisson中使用RExecutorService接口的快速示例:

 

  1. RExecutorService executorService = redisson.getExecutorService("myExecutor", options); 
  2. executorService.submit(new RunnableTask(123)); 
  3. RExecutorService executorService = redisson.getExecutorService("myExecutor", options); 
  4. Future<Long> future = executorService.submit(new CallableTask()); 
  5. Long result = future.get(); 

RExecutorService接口包括對Runnable和Callable對象,Lambda任務以及Spring Bean任務的支持。

結論

Redisson內置了對Redis中許多最常見Java對象的內置支持,包括Map,Set,Objectholder,Lock和ExecutorService。

責任編輯:華軒 來源: 今日頭條
相關推薦

2019-07-15 14:49:16

網絡安全云計算軟件

2009-12-09 09:40:31

Linux云計算

2011-07-27 09:30:21

HTML 5

2018-03-07 13:30:09

數據庫Redis

2012-02-02 10:27:23

Windows8 Be問題

2011-12-05 10:38:37

Java面試

2016-01-20 10:11:56

華麗CanvasHTML5

2018-11-19 05:34:31

云計算云安全IT

2018-02-09 08:09:24

Redis軟件用法

2010-08-04 13:43:59

Flex項目

2015-10-08 09:28:47

JavaDocker鏡像

2017-02-28 20:34:08

Linux移動應用程序員

2021-04-26 08:36:56

Javascript輪播庫開發

2020-08-23 09:12:52

JavaJava IDE框架

2012-04-05 13:19:06

WEBHTML5

2020-11-24 09:45:57

JavaScript開發框架

2020-03-29 20:38:35

PythonLambda語言

2019-02-18 13:36:03

Redis數據庫面試

2012-04-09 09:29:02

Java

2020-07-28 23:18:41

Java開源IDE工具
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 九九热精品视频 | 黄色在线免费看 | 国产在线观看一区 | 午夜精品视频在线观看 | 国产激情一区二区三区 | 欧美精品一区二区在线观看 | 日韩福利 | 亚洲一区二区三区在线视频 | 91精品国产91久久久久久密臀 | 久久久成人精品 | 国产国拍亚洲精品av | 人人做人人澡人人爽欧美 | 久久99精品视频 | 国产精品99久久久精品免费观看 | 免费一级片 | 亚洲精品电影网在线观看 | www.4虎影院 国产999精品久久久影片官网 | 久久亚洲一区二区三区四区 | 一区二区三区视频在线免费观看 | 在线播放亚洲 | 亚洲不卡在线观看 | 日本不卡一区 | 久久精品超碰 | 天天摸天天干 | 颜色网站在线观看 | 日韩小视频在线 | 国产精品欧美精品 | 久久久www成人免费无遮挡大片 | 999久久精品 | 久久中文字幕一区 | 91xh98hx 在线 国产 | 超碰在线久 | 天天久 | 日韩和的一区二区 | 九九九视频 | 国产99免费 | 日本中文字幕在线视频 | 中文区中文字幕免费看 | 国产精品成人品 | 成人精品国产一区二区4080 | 欧美一级高潮片免费的 |