redis集群與redis分布式的區(qū)別是什么

redis集群與redis分布式的區(qū)別是什么?可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。

成都創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供上海網(wǎng)站建設(shè)、上海做網(wǎng)站、上海網(wǎng)站設(shè)計(jì)、上海網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁(yè)設(shè)計(jì)與制作、上海企業(yè)網(wǎng)站模板建站服務(wù),10多年上海做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價(jià)值的思路和整體網(wǎng)絡(luò)服務(wù)。

分布式是指將業(yè)務(wù)系統(tǒng)進(jìn)行拆分,即分布式的每一個(gè)節(jié)點(diǎn)都是實(shí)現(xiàn)不同的功能。

集群是一組協(xié)同工作的服務(wù)實(shí)體,用以提供比單一服務(wù)實(shí)體更具擴(kuò)展性與可用性的服務(wù)平臺(tái)。       

簡(jiǎn)單說(shuō),分布式是以縮短單個(gè)任務(wù)的執(zhí)行時(shí)間來(lái)提升效率的,而集群則是通過(guò)提高單位時(shí)間內(nèi)執(zhí)行的任務(wù)數(shù)來(lái)提升效率。

Redis Cluster 集群模式通常具有高可用、可擴(kuò)展性、分布式、容錯(cuò)等特性。Redis 分布式方案一般有兩種:

客戶端分區(qū)方案

客戶端就已經(jīng)決定數(shù)據(jù)會(huì)被存儲(chǔ)到哪個(gè) redis 節(jié)點(diǎn)或者從哪個(gè) redis 節(jié)點(diǎn)讀取數(shù)據(jù)。其主要思想是采用哈希算法將 Redis 數(shù)據(jù)的 key 進(jìn)行散列,通過(guò) hash 函數(shù),特定的 key會(huì)映射到特定的 Redis 節(jié)點(diǎn)上。

客戶端分區(qū)方案的代表為 Redis Sharding,Redis Sharding 是 Redis Cluster 出來(lái)之前,業(yè)界普遍使用的 Redis多實(shí)例集群方法。Java 的 Redis 客戶端驅(qū)動(dòng)庫(kù) Jedis,支持 Redis Sharding 功能,即 ShardedJedis 以及結(jié)合緩存池的 ShardedJedisPool。

優(yōu)點(diǎn)

不使用第三方中間件,分區(qū)邏輯可控,配置簡(jiǎn)單,節(jié)點(diǎn)之間無(wú)關(guān)聯(lián),容易線性擴(kuò)展,靈活性強(qiáng)。

缺點(diǎn)

客戶端無(wú)法動(dòng)態(tài)增刪服務(wù)節(jié)點(diǎn),客戶端需要自行維護(hù)分發(fā)邏輯,客戶端之間無(wú)連接共享,會(huì)造成連接浪費(fèi)。

代理分區(qū)方案

客戶端發(fā)送請(qǐng)求到一個(gè)代理組件,代理解析客戶端的數(shù)據(jù),并將請(qǐng)求轉(zhuǎn)發(fā)至正確的節(jié)點(diǎn),最后將結(jié)果回復(fù)給客戶端。

優(yōu)點(diǎn):簡(jiǎn)化客戶端的分布式邏輯,客戶端透明接入,切換成本低,代理的轉(zhuǎn)發(fā)和存儲(chǔ)分離。 缺點(diǎn):多了一層代理層,加重了架構(gòu)部署復(fù)雜度和性能損耗。

代理分區(qū)主流實(shí)現(xiàn)的有方案有 Twemproxy 和 Codis。

Twemproxy

Twemproxy 也叫 nutcraker,是 twitter 開源的一個(gè) redis 和 memcache 的中間代理服務(wù)器程序。Twemproxy 作為代理,可接受來(lái)自多個(gè)程序的訪問(wèn),按照路由規(guī)則,轉(zhuǎn)發(fā)給后臺(tái)的各個(gè) Redis 服務(wù)器,再原路返回。Twemproxy 存在單點(diǎn)故障問(wèn)題,需要結(jié)合 Lvs 和 Keepalived 做高可用方案。

優(yōu)點(diǎn):應(yīng)用范圍廣,穩(wěn)定性較高,中間代理層高可用。 缺點(diǎn):無(wú)法平滑地水平擴(kuò)容/縮容,無(wú)可視化管理界面,運(yùn)維不友好,出現(xiàn)故障,不能自動(dòng)轉(zhuǎn)移。

Codis

Codis 是一個(gè)分布式Redis 解決方案,對(duì)于上層應(yīng)用來(lái)說(shuō),連接 Codis-Proxy 和直接連接原生的Redis-Server 沒(méi)有的區(qū)別。Codis 底層會(huì)處理請(qǐng)求的轉(zhuǎn)發(fā),不停機(jī)的進(jìn)行數(shù)據(jù)遷移等工作。Codis 采用了無(wú)狀態(tài)的代理層,對(duì)于客戶端來(lái)說(shuō),一切都是透明的。

優(yōu)點(diǎn)

實(shí)現(xiàn)了上層 Proxy 和底層 Redis 的高可用,數(shù)據(jù)分片和自動(dòng)平衡,提供命令行接口和 RESTful API,提供監(jiān)控和管理界面,可以動(dòng)態(tài)添加和刪除Redis 節(jié)點(diǎn)。

缺點(diǎn)

部署架構(gòu)和配置復(fù)雜,不支持跨機(jī)房和多租戶,不支持鑒權(quán)管理。

看完上述內(nèi)容,你們對(duì)redis集群與redis分布式的區(qū)別有進(jìn)一步的了解嗎?如果還想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀。

當(dāng)前題目:redis集群與redis分布式的區(qū)別是什么
文章路徑:http://muchs.cn/article8/jehhop.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供做網(wǎng)站、網(wǎng)站排名、App開發(fā)用戶體驗(yàn)、網(wǎng)站策劃自適應(yīng)網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)公司