[發(fā)明專利]一種基于元數(shù)據(jù)管理的分布式緩存客戶端有效
| 申請(qǐng)?zhí)枺?/td> | 201210205264.1 | 申請(qǐng)日: | 2012-06-20 |
| 公開(kāi)(公告)號(hào): | CN102724314A | 公開(kāi)(公告)日: | 2012-10-10 |
| 發(fā)明(設(shè)計(jì))人: | 高正 | 申請(qǐng)(專利權(quán))人: | 深圳市遠(yuǎn)行科技有限公司 |
| 主分類號(hào): | H04L29/08 | 分類號(hào): | H04L29/08 |
| 代理公司: | 深圳市世紀(jì)恒程知識(shí)產(chǎn)權(quán)代理事務(wù)所 44287 | 代理人: | 胡海國(guó) |
| 地址: | 518057 廣東省深圳市南山區(qū)高新*** | 國(guó)省代碼: | 廣東;44 |
| 權(quán)利要求書(shū): | 查看更多 | 說(shuō)明書(shū): | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 基于 數(shù)據(jù)管理 分布式 緩存 客戶端 | ||
技術(shù)領(lǐng)域
本發(fā)明涉及一種計(jì)算機(jī)領(lǐng)域,特別是涉及一種基于元數(shù)據(jù)管理的分布式緩存客戶端。
背景技術(shù)
分布式,是指在核心系統(tǒng)外部,通過(guò)一個(gè)集群方式實(shí)現(xiàn)的某項(xiàng)功能。Memcached是目前使用范圍最廣泛的一個(gè)分布式緩存實(shí)現(xiàn)。Memcached盡管是“分布式”的緩存服務(wù)器,但服務(wù)器端并沒(méi)有分布式功能。各個(gè)Memcached節(jié)點(diǎn)間不會(huì)互相通信以共享信息,對(duì)分布式的支持完全取決于客戶端的實(shí)現(xiàn)。
目前的Memcache客戶端,一般通過(guò)資源池的方式實(shí)現(xiàn)分布式,資源調(diào)度算法主要有“余數(shù)計(jì)算法”和“一致哈希計(jì)算法”,采用“余數(shù)計(jì)算法”的客戶端,在緩存服務(wù)器數(shù)目有變化時(shí),會(huì)引發(fā)大面積的緩存重組,嚴(yán)重影響緩存命中率。而“一致哈希計(jì)算法”的復(fù)雜度高于“余數(shù)計(jì)算法”,在緩存服務(wù)器數(shù)目變化時(shí),影響面積小于“余數(shù)計(jì)算法”,但也同樣會(huì)產(chǎn)生緩存重組,降低緩存命中率。另外,目前的Memcache客戶端實(shí)現(xiàn)均不支持副本功能。
所以,有必要提出一種新的技術(shù),以解決在分布式緩存的環(huán)境中,當(dāng)緩存節(jié)點(diǎn)(服務(wù)器)數(shù)目有變化,或者某些緩存節(jié)點(diǎn)失效的情況下,所引起的緩存重組、命中率大幅度降低,以及客戶端實(shí)現(xiàn)均不支持副本功能的問(wèn)題。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種基于元數(shù)據(jù)管理的分布式緩存客戶端,采用元數(shù)據(jù)存儲(chǔ)的方式實(shí)現(xiàn)Memcached客戶端,可以解決在分布式緩存的環(huán)境中,當(dāng)緩存節(jié)點(diǎn)數(shù)目有變化,或者某些緩存節(jié)點(diǎn)失效的情況下所引起的緩存重組、命中率大幅度降低,以及客戶端不支持副本功能的問(wèn)題。
為了解決以下技術(shù)問(wèn)題,本發(fā)明提供一種基于元數(shù)據(jù)管理的分布式緩存客戶端,包括:元數(shù)據(jù)管理模塊、心跳服務(wù)模塊、負(fù)載均衡模塊,
所述元數(shù)據(jù)管理模塊,用于提供元數(shù)據(jù)支持,并對(duì)元數(shù)據(jù)進(jìn)行管理;
所述心跳服務(wù)模塊,用于向緩存節(jié)點(diǎn)發(fā)送心跳消息,并記錄存儲(chǔ)其響應(yīng)時(shí)間到元數(shù)據(jù)中;
所述負(fù)載均衡模塊,根據(jù)元數(shù)據(jù)中存儲(chǔ)的緩存節(jié)點(diǎn)存儲(chǔ)情況以及心跳服務(wù)模塊提供的緩存節(jié)點(diǎn)響應(yīng)時(shí)間,確定最優(yōu)緩存節(jié)點(diǎn),再?gòu)脑撟顑?yōu)緩存節(jié)點(diǎn)下載緩存數(shù)據(jù)。
進(jìn)一步地,所述心跳服務(wù)模塊向緩存節(jié)點(diǎn)發(fā)送心跳消息,如果該緩存節(jié)點(diǎn)在多次心跳后均無(wú)響應(yīng),則認(rèn)為該緩存節(jié)點(diǎn)失效,從緩存節(jié)點(diǎn)元數(shù)據(jù)中移除該緩存節(jié)點(diǎn)。
進(jìn)一步地,所述緩存客戶端還進(jìn)一步包括:副本管理模塊,用于在某個(gè)緩存節(jié)點(diǎn)存在大并發(fā)用戶訪問(wèn)時(shí),對(duì)其緩存數(shù)據(jù)建立副本。
進(jìn)一步地,所述副本管理模塊建立副本過(guò)程如下:將緩存數(shù)據(jù)從主節(jié)點(diǎn),按照負(fù)載均衡算法計(jì)算出一系列副本節(jié)點(diǎn),以異步形式將緩存數(shù)據(jù)從主節(jié)點(diǎn)復(fù)制到多個(gè)副本節(jié)點(diǎn)上,同時(shí)將副本的位置信息記錄到元數(shù)據(jù)中。
進(jìn)一步地,所述負(fù)載均衡模塊包括:放置緩存子模塊與下載緩存子模塊,所述放置緩存子模塊,用于從存儲(chǔ)的元數(shù)據(jù)中確定出最優(yōu)緩存節(jié)點(diǎn);所述下載緩存子模塊,用于從最優(yōu)緩存節(jié)點(diǎn)的存儲(chǔ)位置下載緩存數(shù)據(jù)。
進(jìn)一步地,所述放置緩存子模塊確定出最優(yōu)緩存節(jié)點(diǎn)的方法是:當(dāng)緩存數(shù)據(jù)沒(méi)有副本時(shí),根據(jù)元數(shù)據(jù)中存儲(chǔ)的緩存節(jié)點(diǎn)存儲(chǔ)情況以及響應(yīng)時(shí)間,確定最優(yōu)緩存節(jié)點(diǎn);當(dāng)緩存數(shù)據(jù)有副本時(shí),用戶的請(qǐng)求在緩存主體創(chuàng)建完成后即返回,再排除掉主體所在緩存節(jié)點(diǎn),根據(jù)元數(shù)據(jù)中存儲(chǔ)的緩存節(jié)點(diǎn)存儲(chǔ)情況以及響應(yīng)時(shí)間,逐一確定副本所在的最優(yōu)緩存節(jié)點(diǎn),副本數(shù)據(jù)的創(chuàng)建是以異步方式進(jìn)行。
進(jìn)一步地,所述緩存客戶端還進(jìn)一步包括:失效管理模塊,用于在緩存數(shù)據(jù)失效時(shí)清理客戶端的元數(shù)據(jù)。
進(jìn)一步地,所述失效管理模塊采用優(yōu)先隊(duì)列來(lái)記錄所有緩存數(shù)據(jù)的失效時(shí)間信息,在失效時(shí)間到后,自動(dòng)清理掉緩存數(shù)據(jù)。
與現(xiàn)有技術(shù)相比,本發(fā)明提供一種基于元數(shù)據(jù)管理的分布式緩存客戶端,采用元數(shù)據(jù)存儲(chǔ)的方式實(shí)現(xiàn)Memcached客戶端,提供細(xì)粒度的調(diào)度算法,精確控制緩存數(shù)據(jù)的分布,并可對(duì)緩存服務(wù)器的狀態(tài)進(jìn)行監(jiān)控。支持通過(guò)緩存服務(wù)器響應(yīng)時(shí)間、剩余空間等多個(gè)參數(shù)計(jì)算緩存分布。此外,本發(fā)明采用緩存副本,副本在第一個(gè)緩存數(shù)據(jù)創(chuàng)建后,通過(guò)異步方式在多個(gè)節(jié)點(diǎn)間復(fù)制,多副本緩存可在用戶并發(fā)訪問(wèn)時(shí)提供更高的性能,在緩存服務(wù)器數(shù)目有變化時(shí),不會(huì)產(chǎn)生緩存重組現(xiàn)象,在緩存服務(wù)器集群中某些節(jié)點(diǎn)宕機(jī)時(shí),用戶可從副本節(jié)點(diǎn)獲取緩存,不影響緩存命中率;在有用戶并發(fā)訪問(wèn)的情況下,客戶可將請(qǐng)求中轉(zhuǎn)到多個(gè)副本服務(wù)器,減低單點(diǎn)并發(fā)所產(chǎn)生的IO瓶頸。
附圖說(shuō)明
此處所說(shuō)明的附圖用來(lái)提供對(duì)本發(fā)明的進(jìn)一步理解,構(gòu)成本發(fā)明的一部分,本發(fā)明的示意性實(shí)施例及其說(shuō)明用于解釋本發(fā)明,并不構(gòu)成對(duì)本發(fā)明的不當(dāng)限定。在附圖中:
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于深圳市遠(yuǎn)行科技有限公司,未經(jīng)深圳市遠(yuǎn)行科技有限公司許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210205264.1/2.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專利網(wǎng)。
- 民用大飛機(jī)機(jī)載網(wǎng)絡(luò)的數(shù)據(jù)管理系統(tǒng)及方法
- 一種移動(dòng)應(yīng)用安全管控方法和設(shè)備
- 基于數(shù)據(jù)庫(kù)管理系統(tǒng)的電極加工管理系統(tǒng)
- 一種數(shù)據(jù)管理方法及裝置
- 基于XBRL標(biāo)準(zhǔn)的主數(shù)據(jù)管理系統(tǒng)的設(shè)計(jì)方法
- 大數(shù)據(jù)環(huán)境下實(shí)現(xiàn)數(shù)據(jù)管理能力評(píng)估的系統(tǒng)及其方法
- 一種基于Hadoop的數(shù)據(jù)管理系統(tǒng)及其管理方法
- 物聯(lián)網(wǎng)檢測(cè)數(shù)據(jù)管理系統(tǒng)及物聯(lián)網(wǎng)檢測(cè)數(shù)據(jù)管理方法
- 基于核心對(duì)象的一體化數(shù)據(jù)管理系統(tǒng)
- 數(shù)據(jù)管理方法、數(shù)據(jù)管理裝置、電子設(shè)備及存儲(chǔ)介質(zhì)
- 逐出高速緩存的行的電路布置、數(shù)據(jù)處理系統(tǒng)和方法
- 共享緩存管理系統(tǒng)及方法
- 分布式緩存系統(tǒng)、數(shù)據(jù)的緩存方法及緩存數(shù)據(jù)的查詢方法
- 一種緩存替換方法;裝置和系統(tǒng)
- 加速引擎及處理器
- 一種日志緩存方法、系統(tǒng)、設(shè)備及計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)
- 緩存控制方法、裝置和計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)
- 至少具有三個(gè)緩存級(jí)別的緩存層級(jí)的混合低級(jí)緩存包含策略
- 基于雙緩存區(qū)的緩存方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)
- 緩存預(yù)載方法、裝置、處理器芯片及服務(wù)器





