欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

數(shù)據(jù)緩存方法、裝置及系統(tǒng)與流程

文檔序號(hào):12478229閱讀:287來源:國知局
數(shù)據(jù)緩存方法、裝置及系統(tǒng)與流程

本申請(qǐng)涉及計(jì)算機(jī)技術(shù)領(lǐng)域,具體涉及一種數(shù)據(jù)緩存方法、裝置及系統(tǒng)。



背景技術(shù):

隨著計(jì)算機(jī)互聯(lián)網(wǎng)技術(shù)的發(fā)展,特別是隨著全球化進(jìn)程的推進(jìn),互聯(lián)網(wǎng)的覆蓋范圍越來越大,覆蓋深度已經(jīng)深入我們的衣食住行。隨著服務(wù)器服務(wù)的客戶端基數(shù)增大,服務(wù)器的處理能力受到了挑戰(zhàn)?,F(xiàn)有技術(shù)中,為了加快對(duì)請(qǐng)求的處理速度,特別是在大量用戶請(qǐng)求處理時(shí),服務(wù)器不再每次都直接查詢和寫數(shù)據(jù)庫,而是先做了緩存處理,在內(nèi)存中維護(hù)一份數(shù)據(jù)供自身訪問,然后再批量同步數(shù)據(jù)和寫數(shù)據(jù)庫,減少查詢數(shù)據(jù)庫和寫數(shù)據(jù)庫。因此,采用分布器服務(wù)器系統(tǒng),將單個(gè)服務(wù)器的緩存壓力分?jǐn)偨o別的服務(wù)器,可以有效降低單個(gè)服務(wù)器的緩存壓力,提高了服務(wù)器的處理能力。

在實(shí)現(xiàn)本申請(qǐng)的過程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)至少存在以下問題:采用分布式服務(wù)器架構(gòu),由于緩存分配到了不同的服務(wù)器,因此在查詢緩存數(shù)據(jù)時(shí)需要在多個(gè)服務(wù)器間查找,增加了查詢時(shí)間;此外,如果兩個(gè)或以上的服務(wù)器緩存了同一份數(shù)據(jù),也要面臨數(shù)據(jù)同步問題,極大程度上影響了請(qǐng)求處理速度。



技術(shù)實(shí)現(xiàn)要素:

本申請(qǐng)實(shí)施例提供一種數(shù)據(jù)緩存方法、裝置及系統(tǒng),用以解決上述闡述的現(xiàn)有技術(shù)中的至少一個(gè)問題。

本申請(qǐng)實(shí)施例的第一方面提供了一種數(shù)據(jù)緩存方法,所述方法包括:

主服務(wù)器更新一級(jí)緩存中的數(shù)據(jù)以生成更新數(shù)據(jù);

主服務(wù)器生成同步指令,將所述同步指令發(fā)送至多個(gè)從服務(wù)器以將所述更新數(shù)據(jù)寫入所述多個(gè)從服務(wù)器的二級(jí)緩存中。

本申請(qǐng)實(shí)施例的第二方面提供了一種數(shù)據(jù)緩存方法,所述方法包括:

從服務(wù)器監(jiān)聽主服務(wù)器更新一級(jí)緩存中的數(shù)據(jù)生成更新數(shù)據(jù)而發(fā)送的同步指令;

從服務(wù)器根據(jù)接收到的同步指令將所述更新數(shù)據(jù)寫入二級(jí)緩存中。

本申請(qǐng)實(shí)施例的第三方面提供了一種數(shù)據(jù)緩存方法,所述方法包括:

從服務(wù)器響應(yīng)客戶端的請(qǐng)求,更新二級(jí)緩存中的數(shù)據(jù)以生成更新數(shù)據(jù);

從服務(wù)器基于所述更新數(shù)據(jù)向主服務(wù)器發(fā)送更新請(qǐng)求,以使所述主服務(wù)器根據(jù)所述更新數(shù)據(jù)修改一級(jí)緩存中的數(shù)據(jù)。

本申請(qǐng)實(shí)施例的第一方面提供了一種數(shù)據(jù)緩存裝置,所述裝置包括:

數(shù)據(jù)更新單元,用于更新一級(jí)緩存中的數(shù)據(jù)以生成更新數(shù)據(jù);

指令生成單元,用于生成同步指令,將所述同步指令發(fā)送至多個(gè)從服務(wù)器以將所述更新數(shù)據(jù)寫入所述多個(gè)從服務(wù)器的二級(jí)緩存中。

本申請(qǐng)實(shí)施例的第二方面提供了一種數(shù)據(jù)緩存裝置,包括:

指令監(jiān)聽單元,用于監(jiān)聽主服務(wù)器更新一級(jí)緩存中的數(shù)據(jù)生成更新數(shù)據(jù)而發(fā)送的同步指令;

數(shù)據(jù)同步單元,用于根據(jù)接收到的同步指令將所述更新數(shù)據(jù)寫入二級(jí)緩存中。

本申請(qǐng)實(shí)施例的第三方面提供了一種數(shù)據(jù)緩存裝置,包括:

請(qǐng)求響應(yīng)單元,用于響應(yīng)客戶端的請(qǐng)求,更新二級(jí)緩存中的數(shù)據(jù)以生成更新數(shù)據(jù);

更新請(qǐng)求發(fā)送單元,用于基于所述更新數(shù)據(jù)向主服務(wù)器發(fā)送更新請(qǐng)求,以使所述主服務(wù)器根據(jù)所述更新數(shù)據(jù)修改一級(jí)緩存中的數(shù)據(jù)。

本申請(qǐng)實(shí)施例最后提供了一種數(shù)據(jù)緩存系統(tǒng),所述系統(tǒng)包括:

第一數(shù)據(jù)緩存裝置,所述第一數(shù)據(jù)緩存裝置為上述實(shí)施例所述的第一方面提供的數(shù)據(jù)緩存裝置;

第二數(shù)據(jù)緩存裝置,所述第二數(shù)據(jù)緩存裝置為上述實(shí)施例所述的第二方面或第三方面提供的數(shù)據(jù)緩存裝置。

本申請(qǐng)實(shí)施例提供的數(shù)據(jù)緩存方法、裝置及系統(tǒng),通過主服務(wù)器直接更改其一級(jí)緩存內(nèi)的數(shù)據(jù)得到更新數(shù)據(jù)后,根據(jù)該更新數(shù)據(jù)生成同步指令發(fā)送至多個(gè)從服務(wù)器使得多個(gè)從服務(wù)器將該更新數(shù)據(jù)寫入其各自的二級(jí)緩存中,或者,通過從服務(wù)器應(yīng)答客戶端的請(qǐng)求從而更新該從服務(wù)器的二級(jí)緩存內(nèi)的數(shù)據(jù)得到更新數(shù)據(jù)后,再根據(jù)該更新數(shù)據(jù)生成更新請(qǐng)求并發(fā)送至主服務(wù)器,使得主服務(wù)器根據(jù)該從服務(wù)器發(fā)送的更新請(qǐng)求更新其一級(jí)緩存內(nèi)的相應(yīng)數(shù)據(jù)后,生成該更新數(shù)據(jù)的同步指令并發(fā)送至其他的從服務(wù)器,進(jìn)一步使得其他從服務(wù)器的二級(jí)緩存內(nèi)同樣的數(shù)據(jù)得到同步更新。與現(xiàn)有技術(shù)相比,本申請(qǐng)實(shí)施例能夠滿足不同服務(wù)器之間數(shù)據(jù)同步的需求,降低在多個(gè)服務(wù)器之間因?yàn)榫彺鏀?shù)據(jù)的差異性導(dǎo)致查詢時(shí)間過長(zhǎng)或數(shù)據(jù)存在誤差造成的損失,減少服務(wù)器對(duì)數(shù)據(jù)的處理時(shí)間,加快對(duì)用戶請(qǐng)求的處理速度,提升用戶體驗(yàn)。

附圖說明

為了更清楚地說明本申請(qǐng)實(shí)施例的技術(shù)方案,下面將對(duì)實(shí)施例描述中所需要使用的附圖作一簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖是本申請(qǐng)的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以根據(jù)這些附圖獲得其他的附圖。

圖1是本申請(qǐng)第一實(shí)施例的數(shù)據(jù)緩存方法的流程圖;

圖2是本申請(qǐng)第二實(shí)施例的數(shù)據(jù)緩存方法的流程圖;

圖3是本申請(qǐng)第三實(shí)施例的數(shù)據(jù)緩存方法的流程圖;

圖4是本申請(qǐng)第四實(shí)施例的數(shù)據(jù)緩存方法的流程圖;

圖5是本申請(qǐng)第一實(shí)施例的數(shù)據(jù)緩存裝置的結(jié)構(gòu)示意圖;

圖6是本申請(qǐng)第三實(shí)施例的數(shù)據(jù)緩存裝置的結(jié)構(gòu)示意圖;

圖7是本申請(qǐng)第四實(shí)施例的數(shù)據(jù)緩存裝置的結(jié)構(gòu)示意圖;

圖8是本申請(qǐng)一實(shí)施例的數(shù)據(jù)緩存設(shè)備的結(jié)構(gòu)示意圖;

圖9是本申請(qǐng)一實(shí)施例的數(shù)據(jù)緩存系統(tǒng)的結(jié)構(gòu)示意圖。

具體實(shí)施方式

為使本申請(qǐng)實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本申請(qǐng)實(shí)施例中的附圖,對(duì)本申請(qǐng)實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例是本申請(qǐng)一部分實(shí)施例,而不是全部的實(shí)施例?;诒旧暾?qǐng)中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本申請(qǐng)保護(hù)的范圍。

需要說明的是,在不沖突的情況下,本申請(qǐng)中的實(shí)施方式及實(shí)施方式中的特征可以相互組合。

本申請(qǐng)可用于眾多通用或?qū)S玫挠?jì)算系統(tǒng)環(huán)境或配置中。例如:個(gè)人計(jì)算機(jī)、服務(wù)器計(jì)算機(jī)、手持設(shè)備或便攜式設(shè)備、平板型設(shè)備、多處理器系統(tǒng)、基于微處理器的系統(tǒng)、置頂盒、可編程的消費(fèi)電子設(shè)備、網(wǎng)絡(luò)PC、小型計(jì)算機(jī)、大型計(jì)算機(jī)、包括以上任何系統(tǒng)或設(shè)備的分布式計(jì)算環(huán)境等等。

本申請(qǐng)可以在由計(jì)算機(jī)執(zhí)行的計(jì)算機(jī)可執(zhí)行指令的一般上下文中描述,例如程序模塊。一般地,程序模塊包括執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型的例程、程序、對(duì)象、組件、數(shù)據(jù)結(jié)構(gòu)等等。也可以在分布式計(jì)算環(huán)境中實(shí)踐本申請(qǐng),在這些分布式計(jì)算環(huán)境中,由通過通信網(wǎng)絡(luò)而被連接的遠(yuǎn)程處理設(shè)備來執(zhí)行任務(wù)。在分布式計(jì)算環(huán)境中,程序模塊可以位于包括存儲(chǔ)設(shè)備在內(nèi)的本地和遠(yuǎn)程計(jì)算機(jī)存儲(chǔ)介質(zhì)中。

最后,還需要說明的是,在本文中,諸如第一和第二等之類的關(guān)系術(shù)語僅僅用來將一個(gè)實(shí)體或者操作與另一個(gè)實(shí)體或操作區(qū)分開來,而不一定要求或者暗示這些實(shí)體或操作之間存在任何這種實(shí)際的關(guān)系或者順序。而且,術(shù)語“包括”、“包含”,不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設(shè)備所固有的要素。在沒有更多限制的情況下,由語句“包括……”限定的要素,并不排除在包括所述要素的過程、方法、物品或者設(shè)備中還存在另外的相同要素。

圖1是本申請(qǐng)第一實(shí)施例的數(shù)據(jù)緩存方法的流程圖。如圖1所示,該方法包括:

S11:主服務(wù)器更新一級(jí)緩存中的數(shù)據(jù)以生成更新數(shù)據(jù);

S12:主服務(wù)器生成同步指令,將所述同步指令發(fā)送至多個(gè)從服務(wù)器以將所述更新數(shù)據(jù)寫入所述多個(gè)從服務(wù)器的二級(jí)緩存中。

本實(shí)施例中,主服務(wù)器可以通過更改其一級(jí)緩存內(nèi)的數(shù)據(jù)得到更新數(shù)據(jù),根據(jù)該更新數(shù)據(jù)生成同步指令并發(fā)送至多個(gè)從服務(wù)器使得多個(gè)從服務(wù)器根據(jù)該同步指令將該更新數(shù)據(jù)寫入其各自的二級(jí)緩存中,由此可以使得主服務(wù)器的一級(jí)緩存內(nèi)和所有從服務(wù)器的二級(jí)緩存內(nèi)的數(shù)據(jù)得到同步更新。

例如,當(dāng)購物網(wǎng)站上部分商品由于促銷、過季等因素而導(dǎo)致其價(jià)格發(fā)生變化時(shí),可以通過該購物網(wǎng)站的主服務(wù)器更改這些商品的價(jià)格,將更改后的商品價(jià)格寫入主服務(wù)器的一級(jí)緩存內(nèi),并通過主服務(wù)器向所有的從服務(wù)器例如以廣播形式發(fā)送同步指令,使所有的從服務(wù)器的二級(jí)緩存內(nèi)存儲(chǔ)的這些商品的價(jià)格也變?yōu)楦暮蟮膬r(jià)格,這樣,當(dāng)用戶訪問該購物網(wǎng)站時(shí),不管該用戶的訪問請(qǐng)求被定向至哪一個(gè)服務(wù)器,該用戶看到的商品價(jià)格均為更改后的價(jià)格,使得這些商品的價(jià)格能夠及時(shí)在所有的服務(wù)器中同步,避免了該購物網(wǎng)站因數(shù)據(jù)沒有及時(shí)同步造成的損失。又例如,用戶觀看視頻內(nèi)容時(shí),若視頻內(nèi)容進(jìn)行了更新,則主服務(wù)器更新其一級(jí)緩存內(nèi)相應(yīng)的視頻內(nèi)容,并將更新后的視頻內(nèi)容同步至所有的從服務(wù)器中,避免了用戶通過不同從服務(wù)器觀看到的視頻內(nèi)容不一致的問題。

與現(xiàn)有技術(shù)相比,本申請(qǐng)實(shí)施例能夠滿足不同服務(wù)器之間數(shù)據(jù)同步的需求,降低在多個(gè)服務(wù)器之間因?yàn)榫彺鏀?shù)據(jù)的差異性導(dǎo)致查詢時(shí)間過長(zhǎng)或數(shù)據(jù)存在誤差造成的損失,減少服務(wù)器對(duì)數(shù)據(jù)的處理時(shí)間,加快了對(duì)用戶請(qǐng)求的處理速度,提升了用戶體驗(yàn)。

圖2是本申請(qǐng)第二實(shí)施例的數(shù)據(jù)緩存方法的流程圖。如圖2所示,該方法包括:

S21:主服務(wù)器接收從服務(wù)器響應(yīng)客戶端的請(qǐng)求而發(fā)送的更新請(qǐng)求,修改一級(jí)緩存中的數(shù)據(jù)以生成更新數(shù)據(jù);

S22:主服務(wù)器生成同步指令,將所述同步指令發(fā)送至多個(gè)從服務(wù)器以將所述更新數(shù)據(jù)寫入所述多個(gè)從服務(wù)器的二級(jí)緩存中。

本實(shí)施例中,由客戶端向某一從服務(wù)器發(fā)出請(qǐng)求,該從服務(wù)器應(yīng)答客戶端的請(qǐng)求的同時(shí)根據(jù)該請(qǐng)求對(duì)該從服務(wù)器的二級(jí)緩存內(nèi)的相應(yīng)數(shù)據(jù)進(jìn)行更新,得到更新數(shù)據(jù)后,再根據(jù)該更新數(shù)據(jù)生成更新請(qǐng)求并發(fā)送至主服務(wù)器,使得主服務(wù)器根據(jù)該從服務(wù)器發(fā)送的更新請(qǐng)求更新其一級(jí)緩存內(nèi)的相應(yīng)數(shù)據(jù)后,生成該更新數(shù)據(jù)的同步指令并發(fā)送至其他的從服務(wù)器,進(jìn)一步使得其他從服務(wù)器的二級(jí)緩存內(nèi)同樣的數(shù)據(jù)得到同步更新。

與圖1所示實(shí)施例不同的是,圖1所示實(shí)施例中主服務(wù)器可以直接更新其一級(jí)緩存內(nèi)的數(shù)據(jù),而圖2所示實(shí)施例中,主服務(wù)器中的一級(jí)緩存內(nèi)的數(shù)據(jù)是根據(jù)客戶端訪問的從服務(wù)器的數(shù)據(jù)更新而更新的,進(jìn)而其他的從服務(wù)器再根據(jù)主服務(wù)器一級(jí)緩存內(nèi)的數(shù)據(jù)更新而更新各自的二級(jí)緩存內(nèi)的數(shù)據(jù)。該方法可以用于用戶通過客戶端對(duì)服務(wù)器中的數(shù)據(jù)進(jìn)行寫操作。例如,用戶通過客戶端在購物網(wǎng)站上對(duì)購買的物品或服務(wù)進(jìn)行付款時(shí),該物品或服務(wù)的付款信息上傳至某一從服務(wù)器,該從服務(wù)器將付款信息顯示在用戶訪問的頁面并上傳至主服務(wù)器,主服務(wù)器再將付款信息同步至其他所有的從服務(wù)器,可以避免用戶因網(wǎng)絡(luò)狀況不穩(wěn)定等原因?qū)е赂犊铐撁嫠⑿潞?,通過其他從服務(wù)器被訪問時(shí)付款信息未及時(shí)更新,從而可能造成用戶損失的問題。又例如,用戶在彈幕視頻網(wǎng)站觀看視頻A時(shí),通過客戶端向某一從服務(wù)器發(fā)送了一條對(duì)所觀看視頻A的彈幕,該從服務(wù)器應(yīng)答了用戶的發(fā)送請(qǐng)求后使得用戶可以在客戶端上看到自己所發(fā)的彈幕,同時(shí),該從服務(wù)器將該彈幕上傳至主服務(wù)器,主服務(wù)器又將該彈幕同步在其他所有的從服務(wù)器上,使得其他用戶在通過其他從服務(wù)器觀看視頻A時(shí),也能實(shí)時(shí)看到該彈幕,增加了用戶觀看視頻的樂趣,提升了用戶體驗(yàn)。

圖3是本申請(qǐng)第三實(shí)施例的數(shù)據(jù)緩存方法的流程圖。如圖3所示,該方法包括:

S31:從服務(wù)器監(jiān)聽主服務(wù)器更新一級(jí)緩存中的數(shù)據(jù)生成更新數(shù)據(jù)而發(fā)送的同步指令;

S32:從服務(wù)器根據(jù)接收到的同步指令將所述更新數(shù)據(jù)寫入二級(jí)緩存中。

本實(shí)施例中,在主服務(wù)器更改其一級(jí)緩存內(nèi)的數(shù)據(jù)得到更新數(shù)據(jù)后,從服務(wù)器監(jiān)聽主服務(wù)器根據(jù)該更新數(shù)據(jù)生成而發(fā)送的同步指令,并根據(jù)該同步指令將該更新數(shù)據(jù)寫入各自的二級(jí)緩存中,由此可以使得主服務(wù)器的一級(jí)緩存內(nèi)和所有從服務(wù)器的二級(jí)緩存內(nèi)的數(shù)據(jù)得到同步更新。

圖4是本申請(qǐng)第四實(shí)施例的數(shù)據(jù)緩存方法的流程圖。如圖4所示,該方法包括:

S41:從服務(wù)器響應(yīng)客戶端的請(qǐng)求,更新二級(jí)緩存中的數(shù)據(jù)以生成更新數(shù)據(jù);

S42:從服務(wù)器基于所述更新數(shù)據(jù)向主服務(wù)器發(fā)送更新請(qǐng)求,以使所述主服務(wù)器根據(jù)所述更新數(shù)據(jù)修改一級(jí)緩存中的數(shù)據(jù)。

本實(shí)施例中,由客戶端向某一從服務(wù)器發(fā)出請(qǐng)求,該從服務(wù)器應(yīng)答客戶端的請(qǐng)求的同時(shí)根據(jù)該請(qǐng)求對(duì)該從服務(wù)器的二級(jí)緩存內(nèi)的相應(yīng)數(shù)據(jù)進(jìn)行更新,得到更新數(shù)據(jù)后,再根據(jù)該更新數(shù)據(jù)生成更新請(qǐng)求并發(fā)送至主服務(wù)器,使得主服務(wù)器能夠根據(jù)該從服務(wù)器發(fā)送的更新請(qǐng)求更新其一級(jí)緩存內(nèi)的相應(yīng)數(shù)據(jù)。從而在后續(xù)過程中主服務(wù)器生成該更新數(shù)據(jù)的同步指令并發(fā)送至其他的從服務(wù)器,進(jìn)一步能夠使得其他從服務(wù)器的二級(jí)緩存內(nèi)同樣的數(shù)據(jù)得到同步更新。這樣,則所有服務(wù)器中的數(shù)據(jù)都得到了同步更新。

在本申請(qǐng)實(shí)施例中,主從服務(wù)器中緩存的數(shù)據(jù)其存儲(chǔ)結(jié)構(gòu)可以是順序存儲(chǔ)、鏈?zhǔn)酱鎯?chǔ)、索引存儲(chǔ)和散列存儲(chǔ)中的任意一種或多種。例如,可以將數(shù)據(jù)以鍵值對(duì)(Key-Value)的形式存儲(chǔ)在服務(wù)器中。

在本申請(qǐng)實(shí)施例的一些實(shí)施方式中,從服務(wù)器在接收主服務(wù)器向從服務(wù)器發(fā)送的同步指令后可以向主服務(wù)器發(fā)送更新數(shù)據(jù)是否在從服務(wù)器中同步成功的反饋信息。

需要說明的是,對(duì)于前述的各方法實(shí)施例,為了簡(jiǎn)單描述,故將其都表述為一系列的動(dòng)作合并,但是本領(lǐng)域技術(shù)人員應(yīng)該知悉,本申請(qǐng)并不受所描述的動(dòng)作順序的限制,因?yàn)橐罁?jù)本申請(qǐng),某些步驟可以采用其他順序或者同時(shí)進(jìn)行。其次,本領(lǐng)域技術(shù)人員也應(yīng)該知悉,說明書中所描述的實(shí)施例均屬于優(yōu)選實(shí)施例,所涉及的動(dòng)作和模塊并不一定是本申請(qǐng)所必須的。

在上述實(shí)施例中,對(duì)各個(gè)實(shí)施例的描述都各有側(cè)重,某個(gè)實(shí)施例中沒有詳述的部分,可以參見其他實(shí)施例的相關(guān)描述。

圖5是本申請(qǐng)第一實(shí)施例的數(shù)據(jù)緩存裝置的結(jié)構(gòu)示意圖。本申請(qǐng)實(shí)施例中所述的數(shù)據(jù)緩存方法可以基于本申請(qǐng)實(shí)施例中的數(shù)據(jù)緩存裝置實(shí)施。如圖5所示,該裝置包括數(shù)據(jù)更新單元51和指令生成單元52。

數(shù)據(jù)更新單元51用于更新一級(jí)緩存中的數(shù)據(jù)以生成更新數(shù)據(jù);

指令生成單元52用于生成同步指令,將所述同步指令發(fā)送至多個(gè)從服務(wù)器以將所述更新數(shù)據(jù)寫入所述多個(gè)從服務(wù)器的二級(jí)緩存中。

本實(shí)施例中,數(shù)據(jù)更新單元可以通過更改其一級(jí)緩存內(nèi)的數(shù)據(jù)得到更新數(shù)據(jù),指令生成單元根據(jù)該更新數(shù)據(jù)生成同步指令并發(fā)送至多個(gè)從服務(wù)器使得多個(gè)從服務(wù)器根據(jù)該同步指令將該更新數(shù)據(jù)寫入其各自的二級(jí)緩存中,由此可以使得主服務(wù)器的一級(jí)緩存內(nèi)和所有從服務(wù)器的二級(jí)緩存內(nèi)的數(shù)據(jù)得到同步更新。

與現(xiàn)有技術(shù)相比,本申請(qǐng)實(shí)施例能夠滿足不同服務(wù)器之間數(shù)據(jù)同步的需求,降低在多個(gè)服務(wù)器之間因?yàn)榫彺鏀?shù)據(jù)的差異性導(dǎo)致查詢時(shí)間過長(zhǎng)或數(shù)據(jù)存在誤差造成的損失,減少服務(wù)器對(duì)數(shù)據(jù)的處理時(shí)間,加快了對(duì)用戶請(qǐng)求的處理速度,提升了用戶體驗(yàn)。

在本申請(qǐng)第二實(shí)施例的數(shù)據(jù)緩存裝置中,數(shù)據(jù)更新單元用于接收從服務(wù)器響應(yīng)客戶端的請(qǐng)求而發(fā)送的更新請(qǐng)求,修改一級(jí)緩存中的數(shù)據(jù)以生成更新數(shù)據(jù)。

本實(shí)施例中,由客戶端向某一從服務(wù)器發(fā)出請(qǐng)求,該從服務(wù)器應(yīng)答客戶端的請(qǐng)求的同時(shí)根據(jù)該請(qǐng)求對(duì)該從服務(wù)器的二級(jí)緩存內(nèi)的相應(yīng)數(shù)據(jù)進(jìn)行更新,得到更新數(shù)據(jù)后,再根據(jù)該更新數(shù)據(jù)生成更新請(qǐng)求并發(fā)送至數(shù)據(jù)更新單元,使得數(shù)據(jù)更新單元根據(jù)該從服務(wù)器發(fā)送的更新請(qǐng)求更新其一級(jí)緩存內(nèi)的相應(yīng)數(shù)據(jù)后,指令生成單元生成該更新數(shù)據(jù)的同步指令并發(fā)送至其他的從服務(wù)器,進(jìn)一步使得其他從服務(wù)器的二級(jí)緩存內(nèi)同樣的數(shù)據(jù)得到同步更新。

圖6是本申請(qǐng)第三實(shí)施例的數(shù)據(jù)緩存裝置的結(jié)構(gòu)示意圖。如圖6所示,該裝置包括指令監(jiān)聽單元61和數(shù)據(jù)同步單元62。

指令監(jiān)聽單元61用于監(jiān)聽主服務(wù)器更新一級(jí)緩存中的數(shù)據(jù)生成更新數(shù)據(jù)而發(fā)送的同步指令;

數(shù)據(jù)同步單元62用于根據(jù)接收到的同步指令將所述更新數(shù)據(jù)寫入二級(jí)緩存中。

本實(shí)施例中,在主服務(wù)器更改其一級(jí)緩存內(nèi)的數(shù)據(jù)得到更新數(shù)據(jù)后,指令監(jiān)聽單元監(jiān)聽主服務(wù)器根據(jù)該更新數(shù)據(jù)生成而發(fā)送的同步指令,并通過數(shù)據(jù)同步單元根據(jù)該同步指令將該更新數(shù)據(jù)寫入各自的二級(jí)緩存中,由此可以使得主服務(wù)器的一級(jí)緩存內(nèi)和所有從服務(wù)器的二級(jí)緩存內(nèi)的數(shù)據(jù)得到同步更新。

圖7是本申請(qǐng)第四實(shí)施例的數(shù)據(jù)緩存裝置的結(jié)構(gòu)示意圖。如圖7所示,該裝置包括請(qǐng)求響應(yīng)單元71和更新請(qǐng)求發(fā)送單元72。

請(qǐng)求響應(yīng)單元71用于響應(yīng)客戶端的請(qǐng)求,更新二級(jí)緩存中的數(shù)據(jù)以生成更新數(shù)據(jù);

更新請(qǐng)求發(fā)送單元72用于基于所述更新數(shù)據(jù)向主服務(wù)器發(fā)送更新請(qǐng)求,以使所述主服務(wù)器根據(jù)所述更新數(shù)據(jù)修改一級(jí)緩存中的數(shù)據(jù)。

本實(shí)施例中,由客戶端向某一從服務(wù)器發(fā)出請(qǐng)求,該從服務(wù)器的請(qǐng)求響應(yīng)單元應(yīng)答客戶端的請(qǐng)求的同時(shí)根據(jù)該請(qǐng)求對(duì)該從服務(wù)器的二級(jí)緩存內(nèi)的相應(yīng)數(shù)據(jù)進(jìn)行更新,得到更新數(shù)據(jù)后,再根據(jù)該更新數(shù)據(jù)生成更新請(qǐng)求并通過更新請(qǐng)求發(fā)送單元發(fā)送至主服務(wù)器,使得主服務(wù)器能夠根據(jù)該從服務(wù)器發(fā)送的更新請(qǐng)求更新其一級(jí)緩存內(nèi)的相應(yīng)數(shù)據(jù)。從而在后續(xù)過程中主服務(wù)器生成該更新數(shù)據(jù)的同步指令并發(fā)送至其他的從服務(wù)器,進(jìn)一步能夠使得其他從服務(wù)器的二級(jí)緩存內(nèi)同樣的數(shù)據(jù)得到同步更新。這樣,則所有服務(wù)器中的數(shù)據(jù)都得到了同步更新。

本申請(qǐng)實(shí)施例中可以通過硬件處理器(hardware processor)來實(shí)現(xiàn)相關(guān)功能模塊。

圖8是本申請(qǐng)一實(shí)施例的數(shù)據(jù)緩存設(shè)備800的結(jié)構(gòu)示意圖。本申請(qǐng)具體實(shí)施例并不對(duì)數(shù)據(jù)緩存設(shè)備800的具體實(shí)現(xiàn)做限定。如圖8所示,該設(shè)備可以包括:

處理器(processor)810、通信接口(Communications Interface)820、存儲(chǔ)器(memory)830、以及通信總線840。其中:

處理器810、通信接口820、以及存儲(chǔ)器830通過通信總線840完成相互間的通信。

通信接口820,用于與比如客戶端等的網(wǎng)元通信。

處理器810,用于執(zhí)行程序832,具體可以執(zhí)行上述方法實(shí)施例中的相關(guān)步驟。

具體地,程序832可以包括程序代碼,所述程序代碼包括計(jì)算機(jī)操作指令。

處理器810可能是一個(gè)中央處理器CPU,或者是特定集成電路ASIC(Application Specific Integrated Circuit),或者是被配置成實(shí)施本申請(qǐng)實(shí)施例的一個(gè)或多個(gè)集成電路。

圖9是本申請(qǐng)一實(shí)施例的數(shù)據(jù)緩存系統(tǒng)的結(jié)構(gòu)示意圖。如圖9所示,該系統(tǒng)包括第一數(shù)據(jù)緩存裝置91和第二數(shù)據(jù)緩存裝置92。

第一數(shù)據(jù)緩存裝置91為上述第一或第二實(shí)施例所述的數(shù)據(jù)緩存裝置;

第二數(shù)據(jù)緩存裝置92為上述第三或第四實(shí)施例所述的數(shù)據(jù)緩存裝置。

以上所描述的方法實(shí)施例僅僅是示意性的,其中所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個(gè)地方,或者也可以分布到多個(gè)網(wǎng)絡(luò)單元上??梢愿鶕?jù)實(shí)際的需要選擇其中的部分或者全部模塊來實(shí)現(xiàn)本實(shí)施例方案的目的。本領(lǐng)域普通技術(shù)人員在不付出創(chuàng)造性的勞動(dòng)的情況下,即可以理解并實(shí)施。

通過以上的實(shí)施例的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到各實(shí)施例可借助軟件加必需的通用硬件平臺(tái)的方式來實(shí)現(xiàn),當(dāng)然也可以通過硬件?;谶@樣的理解,上述技術(shù)方案本質(zhì)上或者說對(duì)現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計(jì)算機(jī)軟件產(chǎn)品可以存儲(chǔ)在計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中,如ROM/RAM、磁碟、光盤等,包括若干指令用以使得一臺(tái)計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行各個(gè)實(shí)施例或者實(shí)施例的某些部分所述的方法。

本領(lǐng)域內(nèi)的技術(shù)人員應(yīng)明白,本申請(qǐng)的實(shí)施例可提供為方法、系統(tǒng)、或計(jì)算機(jī)程序產(chǎn)品。因此,本申請(qǐng)可采用完全硬件實(shí)施例、完全軟件實(shí)施例、或結(jié)合軟件和硬件方面的實(shí)施例的形式。而且,本申請(qǐng)可采用在一個(gè)或多個(gè)其中包含有計(jì)算機(jī)可用程序代碼的計(jì)算機(jī)可用存儲(chǔ)介質(zhì)(包括但不限于磁盤存儲(chǔ)器和光學(xué)存儲(chǔ)器等)上實(shí)施的計(jì)算機(jī)程序產(chǎn)品的形式。

本申請(qǐng)是參照根據(jù)本申請(qǐng)實(shí)施例的方法、設(shè)備(系統(tǒng))、和計(jì)算機(jī)程序產(chǎn)品的流程圖和/或方框圖來描述的。應(yīng)理解可由計(jì)算機(jī)程序指令實(shí)現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合。可提供這些計(jì)算機(jī)程序指令到通用計(jì)算機(jī)、專用計(jì)算機(jī)、嵌入式處理機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器以產(chǎn)生一個(gè)機(jī)器,使得通過計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器執(zhí)行的指令產(chǎn)生用于實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能的裝置。

這些計(jì)算機(jī)程序指令也可存儲(chǔ)在能引導(dǎo)計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備以特定方式工作的計(jì)算機(jī)可讀存儲(chǔ)器中,使得存儲(chǔ)在該計(jì)算機(jī)可讀存儲(chǔ)器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能。這些計(jì)算機(jī)程序指令也可裝載到計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備上,使得在計(jì)算機(jī)或其他可編程設(shè)備上執(zhí)行一系列操作步驟以產(chǎn)生計(jì)算機(jī)實(shí)現(xiàn)的處理,從而在計(jì)算機(jī)或其他可編程設(shè)備上執(zhí)行的指令提供用于實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能的步驟。

最后應(yīng)說明的是:以上實(shí)施例僅用以說明本申請(qǐng)的技術(shù)方案,而非對(duì)其限制;盡管參照前述實(shí)施例對(duì)本申請(qǐng)進(jìn)行了詳細(xì)的說明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解:其依然可以對(duì)前述各實(shí)施例所記載的技術(shù)方案進(jìn)行修改,或者對(duì)其中部分技術(shù)特征進(jìn)行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本申請(qǐng)各實(shí)施例技術(shù)方案的精神和范圍。

當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
天水市| 滁州市| 华蓥市| 马山县| 乡宁县| 南溪县| 密云县| 远安县| 舟山市| 河津市| 沙坪坝区| 清远市| 都匀市| 宁阳县| 保靖县| 迁安市| 湖州市| 新余市| 长沙县| 贵港市| 新民市| 什邡市| 抚州市| 和田市| 海阳市| 康保县| 仙居县| 奇台县| 兰西县| 青浦区| 介休市| 灵丘县| 香港| 葫芦岛市| 龙里县| 会宁县| 青海省| 丹凤县| 正定县| 淮南市| 射阳县|