亚洲精品久久久久久第一页-人妻少妇精彩视品一区二区三区-91国产自拍免费视频-免费一级a在线播放视频正片-少妇天天日天天射天天爽-国产大屁股喷水视频在线观看-操美女骚穴抽插性爱视频-亚洲 欧美 中文字幕 丝袜-成人免费无码片在线观看

國(guó)內(nèi)外個(gè)人免費(fèi)云服務(wù)器推薦 liunx服務(wù)器搭建與管理( 五 )


有需求就有市場(chǎng),有市場(chǎng)就會(huì)有產(chǎn)品,以memcached和Redis為代表的內(nèi)存對(duì)象緩存系統(tǒng)應(yīng)運(yùn)而生 。
緩存系統(tǒng)有三個(gè)著名的問題:
緩存穿透: 緩存設(shè)立的目的是為了一定層面上截獲到數(shù)據(jù)庫(kù)存儲(chǔ)層的請(qǐng)求 。穿透的意思就在于這個(gè)截獲沒有成功,請(qǐng)求最終還是去到了數(shù)據(jù)庫(kù),緩存沒有產(chǎn)生應(yīng)有的價(jià)值 。緩存擊穿: 如果把緩存理解成一面擋在數(shù)據(jù)庫(kù)面前的墻壁,為數(shù)據(jù)庫(kù)“抵御”查詢請(qǐng)求,所謂擊穿,就是在這面墻壁上打出了一個(gè)洞 。一般發(fā)生在某個(gè)熱點(diǎn)數(shù)據(jù)緩存到期,而此時(shí)針對(duì)該數(shù)據(jù)的大量查詢請(qǐng)求來臨,大家一股腦的懟到了數(shù)據(jù)庫(kù) 。緩存雪崩: 理解了擊穿,那雪崩就更好理解了 。俗話說得好,擊穿是一個(gè)人的雪崩,雪崩是一群人的擊穿 。如果緩存這堵墻上處處都是洞,那這面墻還如何屹立?吃棗藥丸 。關(guān)于這三個(gè)問題這里不詳細(xì)講述 。
有了緩存系統(tǒng),我們就可以在向數(shù)據(jù)庫(kù)請(qǐng)求之前,先詢問緩存系統(tǒng)是否有我們需要的數(shù)據(jù),如果有且滿足需要,我們就可以省去一次數(shù)據(jù)庫(kù)的查詢,如果沒有,我們?cè)傧驍?shù)據(jù)庫(kù)請(qǐng)求 。
注意,這里有一個(gè)關(guān)鍵的問題,如何判斷我們要的數(shù)據(jù)是不是在緩存系統(tǒng)中呢?
進(jìn)一步,我們把這個(gè)問題抽象出來:如何快速判斷一個(gè)數(shù)據(jù)量很大的集合中是否包含我們指定的數(shù)據(jù)?
這個(gè)時(shí)候,就是布隆過濾器大顯身手的時(shí)候了,它就是為了解決這個(gè)問題而誕生的 。那布隆過濾器是如何解決這個(gè)問題的呢?
先回到上面的問題中來,這其實(shí)是一個(gè)查找問題,對(duì)于查找問題,最常用的解決方案是搜索樹和哈希表兩種方案 。
因?yàn)檫@個(gè)問題有兩個(gè)關(guān)鍵點(diǎn):快速、數(shù)據(jù)量很大 。樹結(jié)構(gòu)首先得排除,哈希表倒是可以做到常數(shù)階的性能,但數(shù)據(jù)量大了以后,一方面對(duì)哈希表的容量要求巨大,另一方面如何設(shè)計(jì)一個(gè)好的哈希算法能夠做到如此大量數(shù)據(jù)的哈希映射也是一個(gè)難題 。
對(duì)于容量的問題,考慮到只需要判斷對(duì)象是否存在,而并非拿到對(duì)象,我們可以將哈希表的表項(xiàng)大小設(shè)置為1個(gè)bit,1表示存在,0表示不存在,這樣大大縮小哈希表的容量 。
而對(duì)于哈希算法的問題,如果我們對(duì)哈希算法要求低一些,那哈希碰撞的機(jī)率就會(huì)增加 。那一個(gè)哈希算法容易沖突,那就多弄幾個(gè),多個(gè)哈希函數(shù)同時(shí)沖突的概率就小的多 。
布隆過濾器就是基于這樣的設(shè)計(jì)思路:
當(dāng)設(shè)置對(duì)應(yīng)的key-value時(shí),按照一組哈希算法的計(jì)算,將對(duì)應(yīng)比特位置1 。
但當(dāng)對(duì)應(yīng)的key-value刪除時(shí),卻不能將對(duì)應(yīng)的比特位置0,因?yàn)楸2粶?zhǔn)其他某個(gè)key的某個(gè)哈希算法也映射到了同一個(gè)位置 。
也正是因?yàn)檫@樣,引出了布隆過濾器的另外一個(gè)重要特點(diǎn):布隆過濾器判定存在的實(shí)際上不一定存在,但判定不存在的則一定不存在 。
你們公司網(wǎng)站的內(nèi)容越來越多了,用戶對(duì)于快速全站搜索的需求日益強(qiáng)烈 。這個(gè)時(shí)候,你需要:
全文搜索技術(shù)對(duì)于一些簡(jiǎn)單的查詢需求,傳統(tǒng)的關(guān)系型數(shù)據(jù)庫(kù)尚且可以應(yīng)付 。但搜索需求一旦變得復(fù)雜起來,比如根據(jù)文章內(nèi)容關(guān)鍵字、多個(gè)搜索條件但邏輯組合等情況下,數(shù)據(jù)庫(kù)就捉襟見肘了,這個(gè)時(shí)候就需要單獨(dú)的索引系統(tǒng)來進(jìn)行支持 。
如今行業(yè)內(nèi)廣泛使用的ElasticSearch(簡(jiǎn)稱ES)就是一套強(qiáng)大的搜索引擎 。集全文檢索、數(shù)據(jù)分析、分布式部署等優(yōu)點(diǎn)于一身,成為企業(yè)級(jí)搜索技術(shù)的首選 。
ES使用RESTful接口,使用JSON作為數(shù)據(jù)傳輸格式,支持多種查詢匹配,為各主流語(yǔ)言都提供了SDK,易于上手 。
另外,ES常常和另外兩個(gè)開源軟件Logstash、Kibana一起,形成一套日志收集、分析、展示的完整解決方案:ELK架構(gòu) 。


以上關(guān)于本文的內(nèi)容,僅作參考!溫馨提示:如遇健康、疾病相關(guān)的問題,請(qǐng)您及時(shí)就醫(yī)或請(qǐng)專業(yè)人士給予相關(guān)指導(dǎo)!

「愛刨根生活網(wǎng)」www.malaban59.cn小編還為您精選了以下內(nèi)容,希望對(duì)您有所幫助: