欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

Redis內(nèi)存數(shù)據(jù)庫(kù)分片的示例分析

這篇文章將為大家詳細(xì)講解有關(guān)redis內(nèi)存數(shù)據(jù)庫(kù)分片的示例分析,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個(gè)參考,希望大家閱讀完這篇文章后對(duì)相關(guān)知識(shí)有一定的了解。

我們提供的服務(wù)有:網(wǎng)站設(shè)計(jì)、做網(wǎng)站、微信公眾號(hào)開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、淮濱ssl等。為千余家企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的淮濱網(wǎng)站制作公司

軟件下載地址

·       允許用多臺(tái)機(jī)器的內(nèi)存存放更大的數(shù)據(jù)集。如果沒有分片,那么你只能存放單臺(tái)機(jī)器內(nèi)存的最大值的數(shù)據(jù)集。

·       允許用多核和多臺(tái)機(jī)器提高計(jì)算能力和網(wǎng)絡(luò)帶寬。

常見的分片方式:

1、按照范圍分片

2、哈希分片,例如一致性哈希

常見的分片的實(shí)現(xiàn):

①客戶端分片

②在代理中做分片,比如:twemproxy

③查詢路由:就是發(fā)送查詢到一個(gè)隨機(jī)實(shí)例,這個(gè)實(shí)例會(huì)保證轉(zhuǎn)發(fā)你的查詢到正確的節(jié)點(diǎn),redis集群在客戶端的幫助下,實(shí)現(xiàn)了查詢路由的一種混合形式,請(qǐng)求不是直接從redis實(shí)例轉(zhuǎn)發(fā)到另一個(gè)實(shí)例,而是客戶端收到重定向到正確的節(jié)點(diǎn)

④在服務(wù)端進(jìn)行分片,Redis采用哈希槽(hash slot)的方式在服務(wù)器端進(jìn)行分片:

Redis集群有16384個(gè)哈希槽,使用健CrC16對(duì)16384取模來計(jì)算一個(gè)鍵所屬的哈希槽

分片的缺點(diǎn)

Redis 的一些特性與分片在一起時(shí)玩轉(zhuǎn)的不是很好:

1、涉及多個(gè)鍵的操作通常不支持。例如,你不能對(duì)映射在兩個(gè)不同 Redis 實(shí)例上的鍵執(zhí)行交集(事實(shí)上有辦法做到,但不是直接這么干)。

2、涉及多個(gè)鍵的事務(wù)不能使用。

3、分片的粒度(granularity)是鍵,所以不能使用一個(gè)很大的鍵來分片數(shù)據(jù)集,例如一個(gè)很大的有序集合。

4、當(dāng)使用了分片,數(shù)據(jù)處理變得更復(fù)雜,例如,你需要處理多個(gè) RDB/AOF 文件,備份數(shù)據(jù)時(shí)你需要聚合多個(gè)實(shí)例和主機(jī)的持久化文件。

5、添加和刪除容量也很復(fù)雜。例如,Redis 集群具有運(yùn)行時(shí)動(dòng)態(tài)添加和刪除節(jié)點(diǎn)的能力來支持透明地再均衡數(shù)據(jù),但是其他方式,像客戶端分片和代理都不支持這個(gè)特性。但是,有一種稱為預(yù)分片(Presharding)的技術(shù)在這一點(diǎn)上能幫上忙。

Redis分片的缺點(diǎn)

1、不支持涉及多建的操作,如mget,如果所操作的健都在同一個(gè)節(jié)點(diǎn),就正常執(zhí)行,否則會(huì)提示報(bào)錯(cuò)

2、分片的粒度是健,因此每個(gè)鍵對(duì)應(yīng)的值不要太大

3、數(shù)據(jù)備份會(huì)比較麻煩,備份數(shù)據(jù)時(shí)你需要聚合多個(gè)實(shí)例和主機(jī)的持久化文件

4、擴(kuò)容的處理比較麻煩

5、故障的恢復(fù)的處理會(huì)比較麻煩,可能需要重新梳理Master和Slave的關(guān)系,并調(diào)整每個(gè)復(fù)制集里面的數(shù)據(jù)

Redis的預(yù)分片技術(shù)

Redis的預(yù)分片技術(shù)可以按照以下步驟進(jìn)行實(shí)例遷移操作:

 (1)在新機(jī)子上啟動(dòng)新的redis實(shí)例;

 (2)將新redis實(shí)例作為slave將原redis實(shí)例作為master,將數(shù)據(jù)從原redis實(shí)例遷移到新redis實(shí)例上;

 (3)停止客戶端(分片操作在客戶端上時(shí))或代理服務(wù)器(分片操作在代理上)

(4)更新客戶端或者代理服務(wù)器中的配置信息,去掉被遷移的原redis實(shí)例的ip和端口等信息,加上新啟動(dòng)redis實(shí)例的IP地址和端口;

(5)向新啟動(dòng)的redis發(fā)送SLAVEOF NOONE命令,終止新redis實(shí)例對(duì)原redis實(shí)例的從屬關(guān)系;

(6)重啟客戶端程序或者代理程序,此時(shí)它們將會(huì)使用新的redis實(shí)例;

 (7)關(guān)掉被遷移走數(shù)據(jù)的原redis實(shí)例;

預(yù)分片

我們已經(jīng)知道分片存在的一個(gè)問題,除非我們使用 Redis 作為緩存,增加和刪除節(jié)點(diǎn)是一件很棘手的事情,使用固定的鍵和實(shí)例映射要簡(jiǎn)單得多。

然而,數(shù)據(jù)存儲(chǔ)的需求可能一直在變化。今天我可以接受 10 個(gè) Redis 節(jié)點(diǎn)(實(shí)例),但是明天我可能就需要 50 個(gè)節(jié)點(diǎn)。

因?yàn)?Redis 只有相當(dāng)少的內(nèi)存占用(footprint)而且輕量級(jí)(一個(gè)空閑的實(shí)例只是用 1MB 內(nèi)存),一個(gè)簡(jiǎn)單的解決辦法是一開始就開啟很多的實(shí)例。即使你一開始只有一臺(tái)服務(wù)器,你也可以在第一天就決定生活在分布式的世界里,使用分片來運(yùn)行多個(gè) Redis 實(shí)例在一臺(tái)服務(wù)器上。

你一開始就可以選擇很多數(shù)量的實(shí)例。例如,32 或者 64 個(gè)實(shí)例能滿足大多數(shù)的用戶,并且為未來的增長(zhǎng)提供足夠的空間。

這樣,當(dāng)你的數(shù)據(jù)存儲(chǔ)需要增長(zhǎng),你需要更多的 Redis 服務(wù)器,你要做的就是簡(jiǎn)單地將實(shí)例從一臺(tái)服務(wù)器移動(dòng)到另外一臺(tái)。當(dāng)你新添加了第一臺(tái)服務(wù)器,你就需要把一半的 Redis 實(shí)例從第一臺(tái)服務(wù)器搬到第二臺(tái),如此等等。

使用 Redis 復(fù)制,你就可以在很小或者根本不需要停機(jī)時(shí)間內(nèi)完成移動(dòng)數(shù)據(jù):

·       在你的新服務(wù)器上啟動(dòng)一個(gè)空實(shí)例。

·       移動(dòng)數(shù)據(jù),配置新實(shí)例為源實(shí)例的從服務(wù)。

·       停止你的客戶端。

·       更新被移動(dòng)實(shí)例的服務(wù)器 IP 地址配置。

·       向新服務(wù)器上的從節(jié)點(diǎn)發(fā)送 SLAVEOF NO ONE 命令。

·       以新的更新配置啟動(dòng)你的客戶端。

·       最后關(guān)閉掉舊服務(wù)器上不再使用的實(shí)例。

Redis集群

由于數(shù)據(jù)量過大,單個(gè)復(fù)制集難以承擔(dān),因此需要對(duì)多個(gè)復(fù)制集進(jìn)行集群,形成水平擴(kuò)展,每個(gè)復(fù)制集只負(fù)責(zé)存儲(chǔ)數(shù)據(jù)集的一部分,這就是Redis的集群

1、在以前版本中,Redis的集群是依靠客戶端分片來完成,但是這樣會(huì)有很多缺點(diǎn),比如維護(hù)成本高,需要客戶端編碼解決;增加、移除節(jié)點(diǎn)都比較繁瑣等

2、Redis3.0新增的一大特性就是支持集群,在不降低性能的情況下,還提供了網(wǎng)絡(luò)分區(qū)的可訪問性和支持對(duì)主數(shù)據(jù)庫(kù)故障的恢復(fù)。

3、使用集群后,都只能使用默認(rèn)的0號(hào)數(shù)據(jù)庫(kù)

4、每個(gè)redis集群節(jié)點(diǎn)需要兩個(gè)TCP連接打開,正常的TCP端口用來服務(wù)客戶端,例如6379,家10000的端口用作數(shù)據(jù)端口,必須保證防火墻打開這兩個(gè)端口

5、Redis集群不保證強(qiáng)一致性,這意味著在特定的條件下,Redis集群可能會(huì)丟掉一些被系統(tǒng)收到的寫入請(qǐng)求命令(Master傳播命令返回OK后掛掉,slave還沒有收到廣播)

集群的架構(gòu)

1、所有的Redis節(jié)點(diǎn)彼此互聯(lián),內(nèi)部使用二進(jìn)制協(xié)議優(yōu)化傳輸速度和寬帶

2、節(jié)點(diǎn)的fail是通過集群中超過半數(shù)的節(jié)點(diǎn)檢測(cè)失效時(shí)才生效

3、客戶端與redis節(jié)點(diǎn)直連,不需要中間的proxy層??蛻舳瞬恍枰B接集群所有節(jié)點(diǎn),連接集群中任何一個(gè)可用節(jié)點(diǎn)即可

4、集群把所有的物理節(jié)點(diǎn)映射到【0-16383】插槽上,集群負(fù)責(zé)維護(hù):節(jié)點(diǎn)—插槽—值 的關(guān)系

集群操作的基本命令

CLUSTER INFO

CLUSTER NODES

CLUSTER MEET  

CLUSTER FORGET

CLUSTER REPLICATE

CLUSTER SAVECONFIG

CLUSTER ADDSLOTS

CLUSTER DELSLOTS

CLUSTER FLUSHSLOTS

CLUSTER SETSLOT  NODE

CLUSTER SETSLOT  MIGRATING

CLUSTER SETSLOT  IMPORTING

CLUSTER SETSLOT  STABLE

CLUSTER KEYSLOT

CLUSTER COUNTKEYSINSLOT

CLUSTER GETKEYSINSLOT

MIGRATE 目的節(jié)點(diǎn)目的節(jié)點(diǎn)鍵名 數(shù)據(jù)庫(kù)號(hào)碼 超時(shí)時(shí)間 [copy] [replace]

關(guān)于Redis內(nèi)存數(shù)據(jù)庫(kù)分片的示例分析就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到。

網(wǎng)頁題目:Redis內(nèi)存數(shù)據(jù)庫(kù)分片的示例分析
文章地址:http://chinadenli.net/article48/gpccep.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供面包屑導(dǎo)航、靜態(tài)網(wǎng)站、自適應(yīng)網(wǎng)站、小程序開發(fā)、軟件開發(fā)、品牌網(wǎng)站建設(shè)

廣告

聲明:本網(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í)需注明來源: 創(chuàng)新互聯(lián)

小程序開發(fā)
亚洲国产av精品一区二区| 国产一区二区久久综合| 国产精品美女午夜视频| 午夜免费精品视频在线看| 好吊妞视频这里有精品| 国产精品一区二区有码| 九九热精品视频免费在线播放| 国产精品十八禁亚洲黄污免费观看| 日韩成人高清免费在线| 毛片在线观看免费日韩| 丰满人妻一二三区av| 欧美成人精品国产成人综合| 日本高清视频在线观看不卡| 欧美精品女同一区二区| 开心五月激情综合婷婷色| 自拍偷拍一区二区三区| 内用黄老外示儒术出处| 冬爱琴音一区二区中文字幕| 久久精品国产熟女精品| 亚洲夫妻性生活免费视频| 日韩欧美一区二区不卡看片| 尹人大香蕉一级片免费看| 国产一区二区三区成人精品| 国产欧美性成人精品午夜| 欧美日韩精品综合在线| 成人你懂的在线免费视频| 视频在线免费观看你懂的 | 欧美日韩精品综合一区| 亚洲一区二区三区在线免费| 国产在线观看不卡一区二区| 欧美一区二区三区不卡高清视| 亚洲av专区在线观看| 午夜精品福利视频观看| 日本少妇aa特黄大片| 久久精品国产一区久久久| 国产免费无遮挡精品视频| 五月综合激情婷婷丁香| 大香蕉伊人一区二区三区| 91免费一区二区三区| 久久亚洲午夜精品毛片| 日本加勒比不卡二三四区|