首頁  >  文章  >  Java  >  Java高端的技術有哪些

Java高端的技術有哪些

WBOY
WBOY轉載
2023-05-31 14:04:061075瀏覽

Redis常用的資料型別

Redis的五種常用的資料型別分別是:String、Hash、List、Set、Sorted set

Java高端的技術有哪些

Redis的使用場景

1.Counting(計數)
2.展示最近、最熱、點擊率最高、活躍度最高等等條件的top list
3.用戶最近訪問記錄也是redis list的很好應用場景
4.透過list的lpop及lpush介面進行佇列的寫入和消費
5.Redis 的Lua的功能擴充實際上為Redis帶來了更多的應用場景,你可以編寫若干command組合作為一個小型的非阻塞事務或更新邏輯
6.Redis提供的主從資料同步功能,其實是對cache的一個強有力功能擴展

小結

如此多的應用無非離不開Redis的所有特性

揭開Redis的神秘面紗

Redis是一個開源(KEY-VALUE鍵值對) ,記憶體儲存的資料結構伺服器,可用作資料庫,快取和訊息佇列代理。採用單一進程單執行緒模型,並行能力強大,是當前網路架構中主流的分散式快取工具。

Java高端的技術有哪些

Redis高效能快取架構設計

1.架構設計

由於redis是單點,項目中需要使用,必須自行實作分散式。基本架構圖如下所示:

Java高端的技術有哪些

2.分散式實作

透過key做一致性哈希,實作key對應redis結點的分佈。

一致性雜湊的實作:

hash值計算:透過支援MD5與MurmurHash兩種計算方式,預設是採用MurmurHash,高效率的hash計算。

一致性的實作:透過java的TreeMap來模擬環狀結構,實現均勻分佈

3.client的選擇

對於jedis修改的主要是分區模組的修改,使其支援了跟據BufferKey進行分區,跟據不同的redis結點信息,可以初始化不同的ShardInfo,同時也修改了JedisPool的底層實現,使其連接pool池支持跟據key,value的建構方法,跟據不同ShardInfos,建立不同的jedis連線客戶端,達到分割區的效果,供應用層呼叫

4.模組的說明

髒資料處理模組,處理失敗執行的快取操作。

屏蔽監控模組,對於jedis操作的異常監控,當某結點出現異常可控制redis結點的切除等操作。

整個分散式模組透過hornetq,來切除異常redis結點。對於新結點的增加,也可以透過reload方法實現增加。 (此模組對於新增結點也可以很方便實現)

以上是Java高端的技術有哪些的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:yisu.com。如有侵權,請聯絡admin@php.cn刪除