Redis分散式概覽
1 Redis分散式演算法原理
1.1 傳統分散式演算法
1.2 Consistent hashing一致性演算法原理
- 環形 hash 空間:按照常用的 hash 演算法來將對應的 key 雜湊到一個具有 232 個桶的空間,即(0-232-1)的數字空間中,現在我們將這些數字頭尾相連,想象成一個閉合的環形
- 把資料通過一定的 hash 演算法對映到環上
- 將機器通過一定的 hash 演算法對映到環上
- 節點按順時針轉動,遇到的第一個機器,就把資料放在該機器上
在移除 or 新增一個 cache 時,他能夠儘可能小的改變已經存在 key 對映關係
1.3 Hash傾斜性
為解決此類事件,引入了虛擬節點
2 Redis分散式環境配置
3 Redis分散式服務端及客戶端啟動
4封裝分散式Shared Redis API
4.1 SharedJedis原始碼解析
封裝RedisSharedPool
測試程式碼
整合測試
5 Redis分散式環境驗證
6 叢集和分散式
- 分散式:不同的業務模組拆分到不同的機器上,解決高併發的問題。 工作形態 redis伺服器各工作方式不同一般稱為Redis分散式
- 叢集:同一個業務部署在多臺機器上,提高系統可用性 是物理形態,一般稱Tomcat叢集
叢集可能執行著一個或多個分散式系統,也可能根本沒有執行分散式系統;分散式系統可能執行在一個叢集上,也可能執行在不屬於一個叢集的多臺(2臺也算多臺)機器上。
你前臺頁面有10個使用者,分別傳送了1個請求,那麼如果不是叢集的話,那這10個請求需要並行在一臺機器上處理,如果每個請求都是1秒鐘,那麼就會有一個人等待10秒鐘,有一個人等待9秒鐘,以此類推;那麼現在在叢集環境下,10個任務並分發到10臺機器同時進行,那麼每個人的等待時間都還是1秒鐘;
當然,你說的浪費確實是,如果系統的併發不是很高,只有一臺或者兩臺機器就能處理的話,那確實是有很大的浪費
7 參考
[Java企業級電商專案架構演進之路
Tomcat叢集與Redis分散式
](https://coding.imooc.com/class/162.html)
相關文章
- Solon Cloud 分散式開發套件清單與快速概覽Cloud分散式套件
- [分散式][Redis]Redis分散式框架搭建與整合分散式Redis框架
- 分散式鎖-Redis分散式Redis
- Redis分散式鎖Redis分散式
- Redis 分散式鎖Redis分散式
- Redis資料結構概覽(原始碼分析)Redis資料結構原始碼
- 十九、Redis分散式鎖、Zookeeper分散式鎖Redis分散式
- 概覽
- Redis分散式鎖解析Redis分散式
- redis系列:分散式鎖Redis分散式
- redis→分散式快取Redis分散式快取
- Springboot + redis分散式鎖Spring BootRedis分散式
- Redis 分散式儲存Redis分散式
- Redis 分散式鎖(一)Redis分散式
- 【Redis】利用 Redis 實現分散式鎖Redis分散式
- DOM概覽
- 公司概覽
- SmartSql Redis 分散式快取SQLRedis分散式快取
- 分散式鎖----Redis實現分散式Redis
- 細說Redis分散式鎖?Redis分散式
- Redis分散式鎖實戰Redis分散式
- Redis 應用-分散式鎖Redis分散式
- Redis實現分散式鎖Redis分散式
- 【180414】分散式鎖(redis/mysql)分散式RedisMySql
- Redis分散式實現原理Redis分散式
- 基於 Redis 分散式鎖Redis分散式
- 詳解Redis分散式鎖Redis分散式
- Hooks概覽(譯)Hook
- Java NIO 概覽Java
- Flutter框架概覽Flutter框架
- Babel 社群概覽Babel
- 推理框架概覽框架
- BurpSuite 功能概覽UI
- Redis面試系列:Redis實現分散式鎖Redis面試分散式
- 分散式Redis深度歷險-Clustor分散式Redis
- 分散式鎖之Redis實現分散式Redis
- 利用Redis實現分散式鎖Redis分散式
- 分散式鎖--Redis小試牛刀分散式Redis