第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

假如我有十臺(tái)緩存服務(wù)器 ,談?wù)刾hp的具體實(shí)現(xiàn)方法

假如我有十臺(tái)緩存服務(wù)器 ,談?wù)刾hp的具體實(shí)現(xiàn)方法

PHP
嗶嗶one 2023-04-16 12:08:02
1:怎樣的算法可以將 一個(gè)數(shù)據(jù)均勻的分配到緩存服務(wù)器上,避免某一臺(tái)服務(wù)器壓力過(guò)高,2:然后怎樣從十臺(tái)緩存服務(wù)器中的某一臺(tái)讀取緩存數(shù)據(jù);
查看完整描述

2 回答

?
森欄

TA貢獻(xiàn)1810條經(jīng)驗(yàn) 獲得超5個(gè)贊

最簡(jiǎn)單的就是拉一個(gè)哈希函數(shù)出來(lái)(比如jshash,sdbmhash,或者直接用stl里頭對(duì)string的hash都可以):hash(key) % 10 => 給出機(jī)器的ID。存取都用這樣的規(guī)則,就沒(méi)有問(wèn)題了。

不過(guò)這種簡(jiǎn)單方式存在的問(wèn)題是,可用性和擴(kuò)展性降低了。任意一臺(tái)機(jī)器掛掉,相應(yīng)的數(shù)據(jù)就沒(méi)地方存,不能自動(dòng)保存到其他機(jī)器。新增機(jī)器的時(shí)候也很麻煩。

查看完整回答
反對(duì) 回復(fù) 2023-04-19
?
互換的青春

TA貢獻(xiàn)1797條經(jīng)驗(yàn) 獲得超6個(gè)贊

使用哈希算法是必然的,就是要看對(duì)什么做哈希
如果你的存的時(shí)候是不帶Key的,也就是說(shuō),存入一個(gè)值,緩存服務(wù)器返回一個(gè)Key,下一次訪問(wèn)使用這個(gè)返回的Key取值??梢杂胢icrotime對(duì)緩存機(jī)器數(shù)取模。

如果你存的時(shí)候是帶Key的,就比較麻煩了,因?yàn)橐WC一致性,我用過(guò)一個(gè)辦法是對(duì)md5做折疊。
就是對(duì)你預(yù)設(shè)的Key做一次md5,得到一個(gè)32位的字符串,然后把字符串中間對(duì)折,做16進(jìn)制加法,得到一個(gè)較小的數(shù)字(可以對(duì)折多次,得到足夠小的數(shù)字,如果不做對(duì)折,直接做截取也可以,目標(biāo)就是把大數(shù)字變?。缓笥玫玫降倪@個(gè)數(shù)字對(duì)機(jī)器數(shù)取模,這樣可以保證一致性。下一次用這個(gè)Key還可以用相同的算法定位到某臺(tái)機(jī)器


查看完整回答
反對(duì) 回復(fù) 2023-04-19
  • 2 回答
  • 0 關(guān)注
  • 142 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)