亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

數(shù)據(jù)存儲(chǔ)方法、應(yīng)用服務(wù)器及遠(yuǎn)程存儲(chǔ)服務(wù)器與流程

文檔序號(hào):12809563閱讀:503來(lái)源:國(guó)知局
數(shù)據(jù)存儲(chǔ)方法、應(yīng)用服務(wù)器及遠(yuǎn)程存儲(chǔ)服務(wù)器與流程

本申請(qǐng)涉及計(jì)算機(jī)存儲(chǔ)技術(shù)領(lǐng)域,尤其涉及一種數(shù)據(jù)存儲(chǔ)方法、應(yīng)用服務(wù)器及遠(yuǎn)程存儲(chǔ)服務(wù)器。



背景技術(shù):

傳統(tǒng)技術(shù)中,為了提高數(shù)據(jù)的訪問(wèn)效率,應(yīng)用服務(wù)器通常會(huì)對(duì)部分?jǐn)?shù)據(jù)進(jìn)行存儲(chǔ),其存儲(chǔ)數(shù)據(jù)的方式主要有如下兩種:

第一種方式是,本地緩存的方式,也即應(yīng)用服務(wù)器將上述數(shù)據(jù)存儲(chǔ)到本地緩存(也即內(nèi)存)中,然而,由于內(nèi)存中的數(shù)據(jù)不能實(shí)現(xiàn)共享,因此,即便是與該應(yīng)用服務(wù)器屬于同一應(yīng)用服務(wù)器集群的其它應(yīng)用服務(wù)器也不能訪問(wèn)上述數(shù)據(jù),事實(shí)上,同一應(yīng)用服務(wù)器集群中的各應(yīng)用服務(wù)器共同用于部署同一業(yè)務(wù)系統(tǒng)時(shí),其存儲(chǔ)和讀取所需的數(shù)據(jù)是完全一致的。由此可以看出,該種數(shù)據(jù)存儲(chǔ)的方式只能提高當(dāng)前應(yīng)用服務(wù)器的數(shù)據(jù)的訪問(wèn)效率,而無(wú)法提高整個(gè)應(yīng)用服務(wù)器集群的數(shù)據(jù)的訪問(wèn)效率。

第二種方式是,遠(yuǎn)程存儲(chǔ)的方式,也即將上述數(shù)據(jù)存儲(chǔ)到遠(yuǎn)程存儲(chǔ)服務(wù)器上。當(dāng)應(yīng)用服務(wù)器想要訪問(wèn)該數(shù)據(jù)時(shí),通過(guò)向遠(yuǎn)程存儲(chǔ)服務(wù)器發(fā)送遠(yuǎn)程過(guò)程調(diào)用(remoteprocedurecall,rpc)請(qǐng)求的方式來(lái)讀取該數(shù)據(jù)。在該種數(shù)據(jù)存儲(chǔ)方式中,雖然,遠(yuǎn)程存儲(chǔ)服務(wù)器上的數(shù)據(jù)可以被同一應(yīng)用服務(wù)器集群中的所有應(yīng)用服務(wù)器所訪問(wèn),但是,當(dāng)同時(shí)有多個(gè)應(yīng)用服務(wù)器想要訪問(wèn)遠(yuǎn)程存儲(chǔ)服務(wù)器上的同一數(shù)據(jù)時(shí),就會(huì)出現(xiàn)遠(yuǎn)程存儲(chǔ)服務(wù)器的訪問(wèn)瓶頸的問(wèn)題,也即出現(xiàn)熱點(diǎn)數(shù)據(jù)問(wèn)題,這會(huì)降低遠(yuǎn)程服務(wù)器的性能。



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

本申請(qǐng)描述了一種數(shù)據(jù)存儲(chǔ)方法、應(yīng)用服務(wù)器及遠(yuǎn)程存儲(chǔ)服務(wù)器,可以提高整個(gè)應(yīng)用服務(wù)器集群的數(shù)據(jù)的訪問(wèn)效率。

第一方面,提供了一種數(shù)據(jù)存儲(chǔ)方法,包括:

第一應(yīng)用服務(wù)器確定待寫入數(shù)據(jù),所述第一應(yīng)用服務(wù)器為用于部署同一業(yè)務(wù)系統(tǒng)的應(yīng)用服務(wù)器集群中的任一應(yīng)用服務(wù)器;

將所述待寫入數(shù)據(jù)存儲(chǔ)到本地緩存中;

向遠(yuǎn)程存儲(chǔ)服務(wù)器發(fā)送第一遠(yuǎn)程調(diào)用請(qǐng)求,所述第一遠(yuǎn)程調(diào)用請(qǐng)求包括所述待寫入數(shù)據(jù),所述第一遠(yuǎn)程調(diào)用請(qǐng)求用于指示所述遠(yuǎn)程存儲(chǔ)服務(wù)器將所述待寫入數(shù)據(jù)存儲(chǔ)到所述遠(yuǎn)程存儲(chǔ)服務(wù)器對(duì)應(yīng)的存儲(chǔ)單元中。

第二方面,提供了一種數(shù)據(jù)存儲(chǔ)方法,包括:

遠(yuǎn)程存儲(chǔ)服務(wù)器接收第一應(yīng)用服務(wù)器在將待寫入數(shù)據(jù)存儲(chǔ)到本地緩存之后發(fā)送的第一遠(yuǎn)程調(diào)用請(qǐng)求,所述第一應(yīng)用服務(wù)器為用于部署同一業(yè)務(wù)系統(tǒng)的應(yīng)用服務(wù)器集群中的任一應(yīng)用服務(wù)器,所述第一遠(yuǎn)程調(diào)用請(qǐng)求包括所述待寫入數(shù)據(jù);

根據(jù)所述第一遠(yuǎn)程調(diào)用請(qǐng)求,將所述待寫入數(shù)據(jù)存儲(chǔ)到所述遠(yuǎn)程存儲(chǔ)服務(wù)器對(duì)應(yīng)的存儲(chǔ)單元中。

第三方面,提供了一種應(yīng)用服務(wù)器,包括:

確定單元,用于確定待寫入數(shù)據(jù);

存儲(chǔ)單元,用于將所述確定單元確定的所述待寫入數(shù)據(jù)存儲(chǔ)到本地緩存中;

發(fā)送單元,用于向遠(yuǎn)程存儲(chǔ)服務(wù)器發(fā)送第一遠(yuǎn)程調(diào)用請(qǐng)求,所述第一遠(yuǎn)程調(diào)用請(qǐng)求包括所述待寫入數(shù)據(jù),所述第一遠(yuǎn)程調(diào)用請(qǐng)求用于指示所述遠(yuǎn)程存儲(chǔ)服務(wù)器將所述待寫入數(shù)據(jù)存儲(chǔ)到所述遠(yuǎn)程存儲(chǔ)服務(wù)器中。

第四方面,提供了一種遠(yuǎn)程存儲(chǔ)服務(wù)器,包括:

接收單元,用于接收第一應(yīng)用服務(wù)器在將待寫入數(shù)據(jù)存儲(chǔ)到本地緩存之后發(fā)送的第一遠(yuǎn)程調(diào)用請(qǐng)求,所述第一應(yīng)用服務(wù)器為用于部署同一業(yè)務(wù)系統(tǒng)的應(yīng)用服務(wù)器集群中的任一應(yīng)用服務(wù)器,所述第一遠(yuǎn)程調(diào)用請(qǐng)求包括所述待寫入數(shù)據(jù);

存儲(chǔ)單元,用于根據(jù)所述第一遠(yuǎn)程調(diào)用請(qǐng)求,存儲(chǔ)所述待寫入數(shù)據(jù)。

本申請(qǐng)?zhí)峁┑臄?shù)據(jù)存儲(chǔ)方法、應(yīng)用服務(wù)器及遠(yuǎn)程存儲(chǔ)服務(wù)器,應(yīng)用服務(wù)器集群中的某一應(yīng)用服務(wù)器在確定待寫入數(shù)據(jù)之后,首先將待寫入數(shù)據(jù)存儲(chǔ)到本地緩存中。之后向遠(yuǎn)程存儲(chǔ)服務(wù)器發(fā)送遠(yuǎn)程調(diào)用請(qǐng)求,遠(yuǎn)程存儲(chǔ)服務(wù)器在接收到遠(yuǎn)程調(diào)用請(qǐng)求之后,將待寫入數(shù)據(jù)存儲(chǔ)到遠(yuǎn)程存儲(chǔ)服務(wù)器對(duì)應(yīng)的存儲(chǔ)單元中。由此可以看出,本申請(qǐng)是同時(shí)結(jié)合了本地緩存及遠(yuǎn)程存儲(chǔ)兩種方式,來(lái)對(duì)數(shù)據(jù)進(jìn)行存儲(chǔ),由此,既可以提高整個(gè)應(yīng)用服務(wù)器集群的數(shù)據(jù)的訪問(wèn)效率,又可以避免數(shù)據(jù)熱點(diǎn)的問(wèn)題。

附圖說(shuō)明

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

圖1為本申請(qǐng)?zhí)峁┑臄?shù)據(jù)存儲(chǔ)方法的應(yīng)用場(chǎng)景示意圖;

圖2為本申請(qǐng)一種實(shí)施例提供的數(shù)據(jù)存儲(chǔ)方法流程圖;

圖3為本申請(qǐng)另一種實(shí)施例提供的數(shù)據(jù)存儲(chǔ)方法流程圖;

圖4為本申請(qǐng)一種實(shí)施例提供的應(yīng)用服務(wù)器的示意圖;

圖5為本申請(qǐng)另一種實(shí)施例提供的遠(yuǎn)程存儲(chǔ)服務(wù)器的示意圖。

具體實(shí)施方式

下面結(jié)合附圖,對(duì)本發(fā)明的實(shí)施例進(jìn)行描述。

本申請(qǐng)實(shí)施例提供的數(shù)據(jù)存儲(chǔ)方法、應(yīng)用服務(wù)器及遠(yuǎn)程存儲(chǔ)服務(wù)器,適用于應(yīng)用服務(wù)器集群中的應(yīng)用服務(wù)器存儲(chǔ)數(shù)據(jù)的場(chǎng)景,該應(yīng)用服務(wù)器集群用于部署同一業(yè)務(wù)系統(tǒng)(如,淘寶交易系統(tǒng)以及支付寶賬戶系統(tǒng)等),其可以包括兩個(gè)以上的應(yīng)用服務(wù)器。

圖1為本申請(qǐng)?zhí)峁┑臄?shù)據(jù)存儲(chǔ)方法的應(yīng)用場(chǎng)景示意圖,圖1中,同一業(yè)務(wù)系統(tǒng)同時(shí)部署在兩個(gè)應(yīng)用服務(wù)器上,也即應(yīng)用服務(wù)器集群10可以包括兩個(gè)應(yīng)用服務(wù)器,該兩個(gè)應(yīng)用服務(wù)器分別為:應(yīng)用服務(wù)器101和應(yīng)用服務(wù)器102,其中,應(yīng)用服務(wù)器101的互聯(lián)網(wǎng)協(xié)議地址(internetprotocoladdress,ip)為:ip1,應(yīng)用服務(wù)器102的ip為:ip2。該兩個(gè)應(yīng)用服務(wù)器的組成結(jié)構(gòu)相同,以應(yīng)用服務(wù)器101為例來(lái)說(shuō),其可以包括緩存組件(component)和本地緩存(也稱內(nèi)存或者本地?cái)?shù)據(jù)中心),緩存組件中同時(shí)封裝了本地緩存的相關(guān)組件以及遠(yuǎn)程緩存的相關(guān)組件,其用于在本地緩存中存儲(chǔ)數(shù)據(jù),還用于在遠(yuǎn)程存儲(chǔ)服務(wù)器中存儲(chǔ)數(shù)據(jù)。在一個(gè)例子中,緩存組件在本地緩存中是以鍵值對(duì)(key-vlaue)的形式來(lái)存儲(chǔ)數(shù)據(jù)的,如,<key1,data1>,<key2,data2>,…,<keyn,datan>,其中,data1,data2,…,datan是指存儲(chǔ)的實(shí)實(shí)在在的數(shù)據(jù),而key1,key2,…,keyn是指上述數(shù)據(jù)的標(biāo)識(shí),其通常是由業(yè)務(wù)系統(tǒng)根據(jù)業(yè)務(wù)最常用的使用條件來(lái)設(shè)定的。如,在應(yīng)用服務(wù)器集群10上部署的業(yè)務(wù)系統(tǒng)為淘寶交易系統(tǒng)時(shí),數(shù)據(jù)的標(biāo)識(shí)可以為商品的唯一標(biāo)識(shí)(identifier,id),而在應(yīng)用服務(wù)器集群10上部署的業(yè)務(wù)系統(tǒng)為支付寶賬戶系統(tǒng)時(shí),上述數(shù)據(jù)的標(biāo)識(shí)可以為用戶的id(user_id)。

圖1中的遠(yuǎn)程存儲(chǔ)服務(wù)器20可以包括控制單元201(也稱控制中心)和存儲(chǔ)單元202(也稱數(shù)據(jù)中心),控制單元201用于記錄與遠(yuǎn)程存儲(chǔ)服務(wù)器已建立連接的應(yīng)用服務(wù)器的地址,并用于記錄遠(yuǎn)程存儲(chǔ)服務(wù)器與該應(yīng)用服務(wù)器的通訊通道的通道標(biāo)識(shí)。在一個(gè)例子中,上述地址與通道標(biāo)識(shí)可以對(duì)應(yīng)存儲(chǔ)。存儲(chǔ)單元202用于存儲(chǔ)應(yīng)用服務(wù)器發(fā)送的數(shù)據(jù),其可以是指內(nèi)存也可以是指外存,當(dāng)存儲(chǔ)單元202為外存時(shí),該外存可以為磁盤等??梢岳斫獾氖?,存儲(chǔ)單元202中的數(shù)據(jù)也可以是以鍵值對(duì)的形式存儲(chǔ)的。

圖2為本申請(qǐng)一種實(shí)施例提供的數(shù)據(jù)存儲(chǔ)方法流程圖。所述方法的執(zhí)行主體可以為具有處理能力的設(shè)備:服務(wù)器或者系統(tǒng)或者裝置,如圖1中的應(yīng)用服務(wù)器。如圖2所示,所述方法具體可以包括:

步驟210,第一應(yīng)用服務(wù)器確定待寫入數(shù)據(jù)。

此處的第一應(yīng)用服務(wù)器可以為用于部署同一業(yè)務(wù)系統(tǒng)的應(yīng)用服務(wù)器集群中的任一應(yīng)用服務(wù)器。如,可以為用于部署淘寶交易系統(tǒng)的應(yīng)用服務(wù)器集群中的任一應(yīng)用服務(wù)器,也可以為用于部署支付寶賬戶系統(tǒng)的應(yīng)用服務(wù)器集群中的任一應(yīng)用服務(wù)器。

步驟210中,第一應(yīng)用服務(wù)器可以通過(guò)兩種方式來(lái)確定待寫入數(shù)據(jù):第一種方式是,第一應(yīng)用服務(wù)器想要提高某一數(shù)據(jù)的訪問(wèn)效率,則可以將該數(shù)據(jù)確定為待寫入數(shù)據(jù)。第二種方式是,第一應(yīng)用服務(wù)器接收調(diào)用方的寫數(shù)據(jù)請(qǐng)求,該寫數(shù)據(jù)請(qǐng)求包括請(qǐng)求寫入的數(shù)據(jù),則可以將該請(qǐng)求寫入的數(shù)據(jù)確定為待寫入數(shù)據(jù)。

可選地,在確定待寫入數(shù)據(jù)之后,還可以確定該待寫入數(shù)據(jù)的標(biāo)識(shí)。在一個(gè)例子中,第一應(yīng)用服務(wù)器可以根據(jù)業(yè)務(wù)最常用的使用條件來(lái)確定上述標(biāo)識(shí)。如,在應(yīng)用服務(wù)器集群10上部署的業(yè)務(wù)系統(tǒng)為淘寶交易系統(tǒng)時(shí),則確定的待寫入數(shù)據(jù)的標(biāo)識(shí)可以為商品的id,而在應(yīng)用服務(wù)器集群10上部署的業(yè)務(wù)系統(tǒng)為支付寶賬戶系統(tǒng)時(shí),則確定的待寫入數(shù)據(jù)的標(biāo)識(shí)可以為用戶的id。

步驟220,將待寫入數(shù)據(jù)存儲(chǔ)到本地緩存中。

此處的本地緩存可以是指第一應(yīng)用服務(wù)器的內(nèi)存。

可選地,本地緩存中的數(shù)據(jù)可以是存儲(chǔ)在隊(duì)列中的。在本地緩存中的數(shù)據(jù)是存儲(chǔ)在隊(duì)列中時(shí),第一應(yīng)用服務(wù)器在將待寫入數(shù)據(jù)存儲(chǔ)到本地緩存之前,可以先判斷隊(duì)列的長(zhǎng)度是否超過(guò)預(yù)設(shè)閾值,若未超過(guò)預(yù)設(shè)閾值,則直接將待寫入數(shù)據(jù)存儲(chǔ)到所述隊(duì)列的尾部;而若超過(guò)預(yù)設(shè)閾值,則可以按照預(yù)設(shè)的數(shù)據(jù)移除算法,對(duì)隊(duì)列中的數(shù)據(jù)進(jìn)行移除,比如,按照先進(jìn)先出(firstinfirstout,fifo)算法,對(duì)隊(duì)列中的數(shù)據(jù)進(jìn)行移除,之后將待寫入數(shù)據(jù)存儲(chǔ)到移除數(shù)據(jù)后的隊(duì)列中。

當(dāng)然,在實(shí)際應(yīng)用中,第一應(yīng)用服務(wù)器也可以通過(guò)其它的方式來(lái)維護(hù)內(nèi)存的隊(duì)列,本申請(qǐng)對(duì)此不作限定。如,第一應(yīng)用服務(wù)器可以周期性判斷隊(duì)列中的數(shù)據(jù)是否超過(guò)時(shí)間閾值,若超過(guò)時(shí)間閾值,則將該數(shù)據(jù)移除。

需要說(shuō)明的是,在還確定待寫入數(shù)據(jù)的標(biāo)識(shí)的情況下,第一應(yīng)用服務(wù)器還可以將該標(biāo)識(shí)也存儲(chǔ)到本地緩存的隊(duì)列中。在一個(gè)例子中,可以將待寫入數(shù)據(jù)的標(biāo)識(shí)以及待寫入數(shù)據(jù)以鍵值對(duì)的形式存儲(chǔ)到本地緩存的隊(duì)列中。如,<key,data>,其中,key是指待寫入數(shù)據(jù)的標(biāo)識(shí),data是指待寫入數(shù)據(jù)。

步驟230,向遠(yuǎn)程存儲(chǔ)服務(wù)器發(fā)送第一遠(yuǎn)程調(diào)用請(qǐng)求。

其中,第一遠(yuǎn)程調(diào)用請(qǐng)求可以包括待寫入數(shù)據(jù),第一遠(yuǎn)程調(diào)用請(qǐng)求用于指示遠(yuǎn)程存儲(chǔ)服務(wù)器將待寫入數(shù)據(jù)存儲(chǔ)到遠(yuǎn)程存儲(chǔ)服務(wù)器對(duì)應(yīng)的存儲(chǔ)單元中。

需要說(shuō)明的是,在還確定待寫入數(shù)據(jù)的標(biāo)識(shí)的情況下,第一應(yīng)用服務(wù)器還可以將該標(biāo)識(shí)發(fā)送給遠(yuǎn)程存儲(chǔ)服務(wù)器,從而遠(yuǎn)程存儲(chǔ)服務(wù)器可以將該標(biāo)識(shí)以及待寫入數(shù)據(jù)以鍵值對(duì)的形式存儲(chǔ)到對(duì)應(yīng)的存儲(chǔ)單元中。在一個(gè)例子中,上述第一遠(yuǎn)程調(diào)用請(qǐng)求可以為:put(keyi,datai),其中,keyi為待寫入數(shù)據(jù)的標(biāo)識(shí),datai為待寫入數(shù)據(jù)。

可選地,上述第一遠(yuǎn)程調(diào)用請(qǐng)求還可以包括第一應(yīng)用服務(wù)器的地址(如,ip)。在第一遠(yuǎn)程調(diào)用請(qǐng)求還包括第一應(yīng)用服務(wù)器的地址時(shí),遠(yuǎn)程存儲(chǔ)服務(wù)器在接收到第一遠(yuǎn)程調(diào)用請(qǐng)求之后,可以根據(jù)該地址,從控制單元中查找第一應(yīng)用服務(wù)器,若查找到,則將待寫入數(shù)據(jù)或者待寫入數(shù)據(jù)以及標(biāo)識(shí)存儲(chǔ)到存儲(chǔ)單元中;若未查找到,則遠(yuǎn)程存儲(chǔ)服務(wù)器可以嘗試與第一應(yīng)用服務(wù)器建立通訊通道,并為該通訊通道分配通道標(biāo)識(shí),之后在控制單元中記錄上述地址與通道標(biāo)識(shí)的對(duì)應(yīng)關(guān)系,此外,還可以單獨(dú)記錄上述地址。在一個(gè)例子中,控制單元中記錄的地址可以為:[ip1,ip2,ip3,…,ipn],而控制單元中記錄的地址與通道標(biāo)識(shí)的對(duì)應(yīng)關(guān)系可以為:<ip1,通道標(biāo)識(shí)1>,<ip2,通道標(biāo)識(shí)2>,…,<ipm,通道標(biāo)識(shí)m>。在單獨(dú)記錄上述地址或者記錄上述地址與通道標(biāo)識(shí)的對(duì)應(yīng)關(guān)系之后,遠(yuǎn)程存儲(chǔ)服務(wù)器可以將待寫入數(shù)據(jù)或者待寫入數(shù)據(jù)以及標(biāo)識(shí)存儲(chǔ)到存儲(chǔ)單元中。

綜上,由于本申請(qǐng)將待寫入數(shù)據(jù)存儲(chǔ)到了遠(yuǎn)程存儲(chǔ)服務(wù)器中,而該遠(yuǎn)程存儲(chǔ)服務(wù)器可以被整個(gè)應(yīng)用服務(wù)器集群所訪問(wèn),由此,可以提高整個(gè)應(yīng)用服務(wù)器集群的數(shù)據(jù)的訪問(wèn)效率。此外,本申請(qǐng)還將待寫入數(shù)據(jù)存儲(chǔ)到了本地緩存中,當(dāng)應(yīng)用服務(wù)器集群中的應(yīng)用服務(wù)器在讀取數(shù)據(jù)時(shí),首先會(huì)從本地緩存中查找該數(shù)據(jù),在查找不到的情況下,才從遠(yuǎn)程存儲(chǔ)服務(wù)器中查找,由此可以避免當(dāng)應(yīng)用服務(wù)器集群中同時(shí)有多個(gè)應(yīng)用服務(wù)器訪問(wèn)同一數(shù)據(jù)時(shí),造成的數(shù)據(jù)熱點(diǎn)問(wèn)題。

當(dāng)執(zhí)行完成上述步驟210-步驟230之后;或者,依照第一應(yīng)用服務(wù)器在本地緩存以及遠(yuǎn)程存儲(chǔ)服務(wù)器中存儲(chǔ)數(shù)據(jù)的方式,當(dāng)應(yīng)用服務(wù)器集群中的其它應(yīng)用服務(wù)器在本地緩存以及遠(yuǎn)程存儲(chǔ)服務(wù)器的存儲(chǔ)單元中以鍵值對(duì)的形式存儲(chǔ)數(shù)據(jù)以及對(duì)應(yīng)的標(biāo)識(shí)之后,本申請(qǐng)的實(shí)施例還可以包括如下步驟:

步驟a:接收調(diào)用方發(fā)送的讀數(shù)據(jù)請(qǐng)求。

此處,可以是由第一應(yīng)用服務(wù)器接收調(diào)用方發(fā)送的讀數(shù)據(jù)請(qǐng)求,該讀數(shù)據(jù)請(qǐng)求可以包括待讀取數(shù)據(jù)的第一標(biāo)識(shí)。

步驟b:根據(jù)第一標(biāo)識(shí),從本地緩存中查找待讀取數(shù)據(jù)。

如,可以根據(jù)第一標(biāo)識(shí),從本地緩存的隊(duì)列中查找待讀取數(shù)據(jù)。

步驟c:若查找到待讀取數(shù)據(jù),將該讀取數(shù)據(jù)返回給調(diào)用方。

由此,可以提高第一應(yīng)用服務(wù)器的數(shù)據(jù)的訪問(wèn)效率。

步驟d:若未查找到待讀取數(shù)據(jù),則向遠(yuǎn)程存儲(chǔ)服務(wù)器發(fā)送第二遠(yuǎn)程調(diào)用請(qǐng)求。

其中,第二遠(yuǎn)程調(diào)用請(qǐng)求可以包括第一標(biāo)識(shí),第二遠(yuǎn)程調(diào)用請(qǐng)求用于指示遠(yuǎn)程存儲(chǔ)服務(wù)器根據(jù)第一標(biāo)識(shí),從存儲(chǔ)單元中查找待讀取數(shù)據(jù)。

具體地,遠(yuǎn)程存儲(chǔ)服務(wù)器在接收到第二遠(yuǎn)程調(diào)用請(qǐng)求之后,可以根據(jù)第二遠(yuǎn)程調(diào)用請(qǐng)求中的第二標(biāo)識(shí),從存儲(chǔ)單元中查找待讀取數(shù)據(jù),若未查找到待讀取數(shù)據(jù),則直接向第一應(yīng)用服務(wù)器返回用于表示查找失敗的消息,再由第一應(yīng)用服務(wù)器將該用于表示查找失敗的消息轉(zhuǎn)發(fā)給調(diào)用方。若查找到待讀取數(shù)據(jù),則遠(yuǎn)程存儲(chǔ)服務(wù)器將該待讀取數(shù)據(jù)返回給第一應(yīng)用服務(wù)器。

步驟e:接收遠(yuǎn)程存儲(chǔ)服務(wù)器發(fā)送的待讀取數(shù)據(jù)。

步驟f:將待讀取數(shù)據(jù)存儲(chǔ)到本地緩存中,并向調(diào)用方返回待讀取數(shù)據(jù)。

第一應(yīng)用服務(wù)器在接收到待讀取數(shù)據(jù)之后,首先將該待讀取數(shù)據(jù)或者待讀取數(shù)據(jù)以及第二標(biāo)識(shí)存儲(chǔ)到本地緩存中,以便當(dāng)該待讀取數(shù)據(jù)被再次訪問(wèn)時(shí),可以直接從本地緩存中獲取到。在本地緩存中存儲(chǔ)待讀取數(shù)據(jù)之后,第一應(yīng)用服務(wù)器可以將該待讀取數(shù)據(jù)返回給調(diào)用方。

可選地,上述第二遠(yuǎn)程調(diào)用請(qǐng)求還可以包括第一應(yīng)用服務(wù)器的地址。在第二遠(yuǎn)程調(diào)用請(qǐng)求還包括第一應(yīng)用服務(wù)器的地址時(shí),遠(yuǎn)程存儲(chǔ)服務(wù)器在執(zhí)行從存儲(chǔ)單元中查找待讀取數(shù)據(jù)之前,先執(zhí)行在控制單元中查找第一應(yīng)用服務(wù)器的步驟,并在查找不到的情況下,執(zhí)行記錄第一應(yīng)用服務(wù)器的地址、建立與第一應(yīng)用服務(wù)器的通訊通道、分配通道標(biāo)識(shí)以及記錄地址與通道標(biāo)識(shí)的對(duì)應(yīng)關(guān)系的步驟,其具體執(zhí)行過(guò)程同上所述,在此不復(fù)贅述。在執(zhí)行上述步驟之后,再執(zhí)行根據(jù)第二標(biāo)識(shí),從存儲(chǔ)單元中查找待讀取數(shù)據(jù)的步驟。

由上述步驟a-步驟f可以看出,本申請(qǐng)中,當(dāng)應(yīng)用服務(wù)器集群中的應(yīng)用服務(wù)器在讀取數(shù)據(jù)時(shí),首先會(huì)從本地緩存中查找該數(shù)據(jù),在查找不到的情況下,才從遠(yuǎn)程存儲(chǔ)服務(wù)器中查找,由此可以避免當(dāng)應(yīng)用服務(wù)器集群中同時(shí)有多個(gè)應(yīng)用服務(wù)器訪問(wèn)同一數(shù)據(jù)時(shí),造成的數(shù)據(jù)熱點(diǎn)問(wèn)題。

當(dāng)執(zhí)行完成上述步驟210-步驟230之后;或者,執(zhí)行完成上述步驟a-步驟f之后;或者,依照第一應(yīng)用服務(wù)器在本地緩存以及遠(yuǎn)程存儲(chǔ)服務(wù)器中存儲(chǔ)數(shù)據(jù)的方式,當(dāng)應(yīng)用服務(wù)器集群中的其它應(yīng)用服務(wù)器在本地緩存以及遠(yuǎn)程存儲(chǔ)服務(wù)器的存儲(chǔ)單元中以鍵值對(duì)的形式存儲(chǔ)數(shù)據(jù)以及對(duì)應(yīng)的標(biāo)識(shí)之后,本申請(qǐng)的實(shí)施例還可以包括如下步驟:

步驟x:確定待刪除數(shù)據(jù)的第二標(biāo)識(shí)。

此處,可以是由第一應(yīng)用服務(wù)器確定待刪除數(shù)據(jù)的第二標(biāo)識(shí)。在一個(gè)例子中,當(dāng)確定相同的標(biāo)識(shí)對(duì)應(yīng)的兩個(gè)數(shù)據(jù)不一致時(shí),則將已存儲(chǔ)的該標(biāo)識(shí)對(duì)應(yīng)的數(shù)據(jù)確定為待刪除數(shù)據(jù)。如,假設(shè)已存儲(chǔ)的數(shù)據(jù)為:<key1,data1>,而新獲取的數(shù)據(jù)為:<key1,data2>,則data1為待刪除數(shù)據(jù)。

步驟y:根據(jù)第二標(biāo)識(shí),從本地緩存中查找待刪除數(shù)據(jù),并刪除待刪除數(shù)據(jù)。

需要說(shuō)明的是,當(dāng)本地緩存中以鍵值對(duì)的形式存儲(chǔ)了待刪除數(shù)據(jù)以及第二標(biāo)識(shí)時(shí),直接刪除該鍵值對(duì),如,刪除<key1,data1>。

步驟z:向遠(yuǎn)程存儲(chǔ)服務(wù)器發(fā)送第三遠(yuǎn)程調(diào)用請(qǐng)求。

其中,第三遠(yuǎn)程調(diào)用請(qǐng)求可以包括第二標(biāo)識(shí)。在一個(gè)例子中,第三遠(yuǎn)程調(diào)用請(qǐng)求可以為:delete(keyj,dataj),其中,keyj為待刪除數(shù)據(jù)的標(biāo)識(shí),datai為待刪除數(shù)據(jù)。

遠(yuǎn)程存儲(chǔ)服務(wù)器在接收到第三調(diào)用請(qǐng)求之后,可以根據(jù)第二標(biāo)識(shí),從存儲(chǔ)單元中查找并刪除待刪除數(shù)據(jù)。此處,當(dāng)存儲(chǔ)單元中以鍵值對(duì)的形式存儲(chǔ)了待刪除數(shù)據(jù)以及第二標(biāo)識(shí)時(shí),直接刪除該鍵值對(duì)。

在刪除待刪除數(shù)據(jù)之后,在控制單元中有已記錄的地址以及通道標(biāo)識(shí)的對(duì)應(yīng)關(guān)系的情況下,遠(yuǎn)程存儲(chǔ)服務(wù)器從控制單元中獲取應(yīng)用服務(wù)器集群中與遠(yuǎn)程存儲(chǔ)服務(wù)器已建立連接的其它應(yīng)用服務(wù)器的地址,并獲取該地址對(duì)應(yīng)的通道標(biāo)識(shí)。之后,通過(guò)通道標(biāo)識(shí)對(duì)應(yīng)的通訊通道向其它應(yīng)用服務(wù)器發(fā)送指示消息,該指示消息用于指示其它應(yīng)用服務(wù)器從對(duì)應(yīng)的本地緩存中查找并刪除待刪除數(shù)據(jù)。舉例來(lái)說(shuō),假設(shè)圖1中,應(yīng)用服務(wù)器101以及應(yīng)用服務(wù)器102均與遠(yuǎn)程存儲(chǔ)服務(wù)器建立了連接,且遠(yuǎn)程存儲(chǔ)服務(wù)器的控制單元的內(nèi)容如下:[ip1,ip2];<ip1,通道標(biāo)識(shí)1>,<ip2,通道標(biāo)識(shí)2>。當(dāng)圖1中的應(yīng)用服務(wù)器101向遠(yuǎn)程存儲(chǔ)服務(wù)器發(fā)送第三調(diào)用請(qǐng)求時(shí),遠(yuǎn)程存儲(chǔ)服務(wù)器在根據(jù)第三遠(yuǎn)程調(diào)用請(qǐng)求刪除待刪除數(shù)據(jù)之后,因?yàn)楂@取到應(yīng)用服務(wù)器102與遠(yuǎn)程存儲(chǔ)服務(wù)器建立了連接,所以可以從控制單元中獲取與應(yīng)用服務(wù)器102對(duì)應(yīng)的通道標(biāo)識(shí):通道標(biāo)識(shí)2,并通過(guò)通道標(biāo)識(shí)2對(duì)應(yīng)的通訊通道向應(yīng)用服務(wù)器102發(fā)送指示消息,該指示消息可以包括第二標(biāo)識(shí)。應(yīng)用服務(wù)器102在接收到指示消息之后,根據(jù)第二標(biāo)識(shí),從本地緩存中查找并刪除待刪除數(shù)據(jù)。

通過(guò)上述步驟x-步驟z就實(shí)現(xiàn)了應(yīng)用服務(wù)器的本地緩存與遠(yuǎn)程存儲(chǔ)服務(wù)器間的同步通訊機(jī)制,由此可以保證兩者之間數(shù)據(jù)的一致性。

圖3為本申請(qǐng)另一種實(shí)施例提供的數(shù)據(jù)存儲(chǔ)方法流程圖。所述方法的執(zhí)行主體可以為具有處理能力的設(shè)備:服務(wù)器或者系統(tǒng)或者裝置,如圖1中的遠(yuǎn)程存儲(chǔ)服務(wù)器。如圖3所示,所述方法具體可以包括:

步驟310,遠(yuǎn)程存儲(chǔ)服務(wù)器接收第一應(yīng)用服務(wù)器在將待寫入數(shù)據(jù)存儲(chǔ)到本地緩存之后發(fā)送的第一遠(yuǎn)程調(diào)用請(qǐng)求。

此處的第一應(yīng)用服務(wù)器為用于部署同一業(yè)務(wù)系統(tǒng)的應(yīng)用服務(wù)器集群中的任一應(yīng)用服務(wù)器。上述第一遠(yuǎn)程調(diào)用請(qǐng)求可以包括待寫入數(shù)據(jù),此外,還可以包括待寫入數(shù)據(jù)的標(biāo)識(shí)。

需要說(shuō)明的是,上述第一應(yīng)用服務(wù)器將待寫入數(shù)據(jù)存儲(chǔ)到本地緩存可以是指:第一應(yīng)用服務(wù)器將待寫入數(shù)據(jù)存儲(chǔ)到本地緩存的隊(duì)列中。在第一應(yīng)用服務(wù)器將待寫入數(shù)據(jù)存儲(chǔ)到本地緩存的隊(duì)列之前,可以先判斷隊(duì)列的長(zhǎng)度是否超過(guò)預(yù)設(shè)閾值,若未超過(guò)預(yù)設(shè)閾值,則直接將待寫入數(shù)據(jù)存儲(chǔ)到所述隊(duì)列的尾部;而若超過(guò)預(yù)設(shè)閾值,則可以按照預(yù)設(shè)的數(shù)據(jù)移除算法,對(duì)隊(duì)列中的數(shù)據(jù)進(jìn)行移除,之后將待寫入數(shù)據(jù)存儲(chǔ)到移除數(shù)據(jù)后的隊(duì)列中。

還需要說(shuō)明的是,在第一遠(yuǎn)程調(diào)用請(qǐng)求還包括待寫入數(shù)據(jù)的標(biāo)識(shí)時(shí),第一應(yīng)用服務(wù)器還可以將該標(biāo)識(shí)也存儲(chǔ)到本地緩存的隊(duì)列中。在一個(gè)例子中,可以將待寫入數(shù)據(jù)的標(biāo)識(shí)以及待寫入數(shù)據(jù)以鍵值對(duì)的形式存儲(chǔ)到本地緩存的隊(duì)列中。

步驟320,根據(jù)第一遠(yuǎn)程調(diào)用請(qǐng)求,將待寫入數(shù)據(jù)存儲(chǔ)到遠(yuǎn)程存儲(chǔ)服務(wù)器對(duì)應(yīng)的存儲(chǔ)單元中。

在第一遠(yuǎn)程調(diào)用請(qǐng)求還包括待寫入數(shù)據(jù)的標(biāo)識(shí)時(shí),第一應(yīng)用服務(wù)器還可以將該標(biāo)識(shí)發(fā)送給遠(yuǎn)程存儲(chǔ)服務(wù)器,從而遠(yuǎn)程存儲(chǔ)服務(wù)器可以將該標(biāo)識(shí)以及待寫入數(shù)據(jù)以鍵值對(duì)的形式存儲(chǔ)到對(duì)應(yīng)的存儲(chǔ)單元中。

可選地,上述第一遠(yuǎn)程調(diào)用請(qǐng)求還可以包括第一應(yīng)用服務(wù)器的地址(如,ip)。在第一遠(yuǎn)程調(diào)用請(qǐng)求還包括第一應(yīng)用服務(wù)器的地址時(shí),遠(yuǎn)程存儲(chǔ)服務(wù)器在接收到第一遠(yuǎn)程調(diào)用請(qǐng)求之后,可以根據(jù)該地址,從控制單元中查找第一應(yīng)用服務(wù)器,若查找到,則將待寫入數(shù)據(jù)或者待寫入數(shù)據(jù)以及標(biāo)識(shí)存儲(chǔ)到存儲(chǔ)單元中;若未查找到,則遠(yuǎn)程存儲(chǔ)服務(wù)器可以嘗試與第一應(yīng)用服務(wù)器建立通訊通道,并為該通訊通道分配通道標(biāo)識(shí),之后在控制單元中記錄上述地址與通道標(biāo)識(shí)的對(duì)應(yīng)關(guān)系,此外,還可以單獨(dú)記錄上述地址。在單獨(dú)記錄上述地址或者記錄上述地址與通道標(biāo)識(shí)的對(duì)應(yīng)關(guān)系之后,遠(yuǎn)程存儲(chǔ)服務(wù)器可以將待寫入數(shù)據(jù)或者待寫入數(shù)據(jù)以及標(biāo)識(shí)存儲(chǔ)到存儲(chǔ)單元中。

當(dāng)執(zhí)行完成上述步驟310-步驟320之后,本申請(qǐng)的實(shí)施例還可以包括如下步驟:

步驟a,接收第一應(yīng)用服務(wù)器在根據(jù)調(diào)用方發(fā)送的待讀取數(shù)據(jù)的第一標(biāo)識(shí),從本地緩存中未查找到待讀取數(shù)據(jù)時(shí)發(fā)送的第二遠(yuǎn)程調(diào)用請(qǐng)求。

此處的第二遠(yuǎn)程調(diào)用請(qǐng)求可以包括第一標(biāo)識(shí)。

步驟b,根據(jù)第一標(biāo)識(shí),從存儲(chǔ)單元中查找待讀取數(shù)據(jù)。

步驟c:若未查找到待讀取數(shù)據(jù),則直接向第一應(yīng)用服務(wù)器返回用于表示查找失敗的消息。

之后,第一應(yīng)用服務(wù)器將該用于表示查找失敗的消息轉(zhuǎn)發(fā)給調(diào)用方。

步驟d:若查找到待讀取數(shù)據(jù),則向第一應(yīng)用服務(wù)器返回待讀取數(shù)據(jù),以用于第一應(yīng)用服務(wù)器將待讀取數(shù)據(jù)存儲(chǔ)到本地緩存中,并向調(diào)用方返回待讀取數(shù)據(jù)。

第一應(yīng)用服務(wù)器在接收到待讀取數(shù)據(jù)之后,首先將該待讀取數(shù)據(jù)或者待讀取數(shù)據(jù)以及第二標(biāo)識(shí)存儲(chǔ)到本地緩存中,以便當(dāng)該待讀取數(shù)據(jù)被再次訪問(wèn)時(shí),可以直接從本地緩存中獲取到。在本地緩存中存儲(chǔ)待讀取數(shù)據(jù)之后,第一應(yīng)用服務(wù)器可以將該待讀取數(shù)據(jù)返回給調(diào)用方。

可選地,上述第二遠(yuǎn)程調(diào)用請(qǐng)求還可以包括第一應(yīng)用服務(wù)器的地址。在第二遠(yuǎn)程調(diào)用請(qǐng)求還包括第一應(yīng)用服務(wù)器的地址時(shí),遠(yuǎn)程存儲(chǔ)服務(wù)器在執(zhí)行從存儲(chǔ)單元中查找待讀取數(shù)據(jù)之前,先執(zhí)行在控制單元中查找第一應(yīng)用服務(wù)器的步驟,并在查找不到的情況下,執(zhí)行記錄第一應(yīng)用服務(wù)器的地址、建立與第一應(yīng)用服務(wù)器的通訊通道、分配通道標(biāo)識(shí)以及記錄地址與通道標(biāo)識(shí)的對(duì)應(yīng)關(guān)系的步驟,其具體執(zhí)行過(guò)程同上所述,在此不復(fù)贅述。在執(zhí)行上述步驟之后,再執(zhí)行根據(jù)第二標(biāo)識(shí),從存儲(chǔ)單元中查找待讀取數(shù)據(jù)的步驟。

當(dāng)執(zhí)行完成上述步驟310-步驟320之后;或者,執(zhí)行完成上述步驟a-步驟d之后,本申請(qǐng)的實(shí)施例還可以包括如下步驟:

步驟w:接收第一應(yīng)用服務(wù)器在根據(jù)待刪除數(shù)據(jù)的第二標(biāo)識(shí),從本地緩存中查找并刪除待刪除數(shù)據(jù)之后發(fā)送的第三遠(yuǎn)程調(diào)用請(qǐng)求。

此處的第三遠(yuǎn)程調(diào)用請(qǐng)求可以包括第二標(biāo)識(shí)。

需要說(shuō)明的是,當(dāng)本地緩存中以鍵值對(duì)的形式存儲(chǔ)了待刪除數(shù)據(jù)以及第二標(biāo)識(shí)時(shí),第一應(yīng)用服務(wù)器直接刪除該鍵值對(duì)。

步驟x:根據(jù)第二標(biāo)識(shí),從存儲(chǔ)單元中查找并刪除待刪除數(shù)據(jù)。

遠(yuǎn)程存儲(chǔ)服務(wù)器在接收到第三調(diào)用請(qǐng)求之后,可以根據(jù)第二標(biāo)識(shí),從存儲(chǔ)單元中查找并刪除待刪除數(shù)據(jù)。此處,當(dāng)存儲(chǔ)單元中以鍵值對(duì)的形式存儲(chǔ)了待刪除數(shù)據(jù)以及第二標(biāo)識(shí)時(shí),直接刪除該鍵值對(duì)。

步驟y:從控制單元中獲取應(yīng)用服務(wù)器集群中與遠(yuǎn)程存儲(chǔ)服務(wù)器已建立連接的其它應(yīng)用服務(wù)器的地址,并獲取地址對(duì)應(yīng)的通道標(biāo)識(shí)。

在刪除待刪除數(shù)據(jù)之后,在控制單元中有已記錄的地址以及通道標(biāo)識(shí)的對(duì)應(yīng)關(guān)系的情況下,遠(yuǎn)程存儲(chǔ)服務(wù)器從控制單元中獲取應(yīng)用服務(wù)器集群中與遠(yuǎn)程存儲(chǔ)服務(wù)器已建立連接的其它應(yīng)用服務(wù)器的地址,并獲取該地址對(duì)應(yīng)的通道標(biāo)識(shí)。

步驟z:通過(guò)通道標(biāo)識(shí)對(duì)應(yīng)的通訊通道向其它應(yīng)用服務(wù)器發(fā)送指示消息.

該指示消息用于指示其它應(yīng)用服務(wù)器從對(duì)應(yīng)的本地緩存中查找并刪除待刪除數(shù)據(jù)。

通過(guò)上述步驟w-步驟z就實(shí)現(xiàn)了應(yīng)用服務(wù)器的本地緩存與遠(yuǎn)程存儲(chǔ)服務(wù)器間的同步通訊機(jī)制,由此可以保證兩者之間數(shù)據(jù)的一致性。

與上述數(shù)據(jù)存儲(chǔ)方法對(duì)應(yīng)地,本申請(qǐng)實(shí)施例還提供的一種應(yīng)用服務(wù)器,如圖4所示,該應(yīng)用服務(wù)器包括:

確定單元401,用于確定待寫入數(shù)據(jù)。

存儲(chǔ)單元402,用于將確定單元401確定的待寫入數(shù)據(jù)存儲(chǔ)到本地緩存中。

存儲(chǔ)單元402具體可以用于:

判斷本地緩存的隊(duì)列的長(zhǎng)度是否超過(guò)預(yù)設(shè)閾值;

若超過(guò)預(yù)設(shè)閾值,則按照預(yù)設(shè)的數(shù)據(jù)移除算法,對(duì)隊(duì)列中的數(shù)據(jù)進(jìn)行移除;

將待寫入數(shù)據(jù)存儲(chǔ)到移除數(shù)據(jù)后的隊(duì)列中。

發(fā)送單元403,用于向遠(yuǎn)程存儲(chǔ)服務(wù)器發(fā)送第一遠(yuǎn)程調(diào)用請(qǐng)求,該第一遠(yuǎn)程調(diào)用請(qǐng)求包括待寫入數(shù)據(jù),第一遠(yuǎn)程調(diào)用請(qǐng)求用于指示遠(yuǎn)程存儲(chǔ)服務(wù)器將待寫入數(shù)據(jù)存儲(chǔ)到遠(yuǎn)程存儲(chǔ)服務(wù)器中。

可選地,該應(yīng)用服務(wù)器還可以還包括:

接收單元404,用于接收調(diào)用方發(fā)送的讀數(shù)據(jù)請(qǐng)求,該讀數(shù)據(jù)請(qǐng)求包括待讀取數(shù)據(jù)的第一標(biāo)識(shí)。

第一查找單元405,用于根據(jù)接收單元404接收的第一標(biāo)識(shí),從本地緩存中查找待讀取數(shù)據(jù)。

發(fā)送單元403,還用于若第一查找單元405未查找到待讀取數(shù)據(jù),則向遠(yuǎn)程存儲(chǔ)服務(wù)器發(fā)送第二遠(yuǎn)程調(diào)用請(qǐng)求,第二遠(yuǎn)程調(diào)用請(qǐng)求包括第一標(biāo)識(shí),第二遠(yuǎn)程調(diào)用請(qǐng)求用于指示遠(yuǎn)程存儲(chǔ)服務(wù)器根據(jù)第一標(biāo)識(shí),查找待讀取數(shù)據(jù)。

接收單元404,還用于接收遠(yuǎn)程存儲(chǔ)服務(wù)器發(fā)送的待讀取數(shù)據(jù)。

存儲(chǔ)單元402,還用于將接收單元404接收的待讀取數(shù)據(jù)存儲(chǔ)到本地緩存中,并向調(diào)用方返回待讀取數(shù)據(jù)。

可選地,該應(yīng)用服務(wù)器還可以包括:第二查找單元407。

確定單元401,還用于確定待刪除數(shù)據(jù)的第二標(biāo)識(shí)。

第二查找到單元407,用于根據(jù)確定單元401確定的第二標(biāo)識(shí),從本地緩存中查找待刪除數(shù)據(jù),并刪除待刪除數(shù)據(jù)。

發(fā)送單元403,還用于向遠(yuǎn)程存儲(chǔ)服務(wù)器發(fā)送第三遠(yuǎn)程調(diào)用請(qǐng)求,第三遠(yuǎn)程調(diào)用請(qǐng)求包括第二標(biāo)識(shí),第三遠(yuǎn)程調(diào)用請(qǐng)求用于指示遠(yuǎn)程存儲(chǔ)服務(wù)器根據(jù)第二標(biāo)識(shí),查找并刪除待刪除數(shù)據(jù),確定遠(yuǎn)程存儲(chǔ)服務(wù)器與其它應(yīng)用服務(wù)器之間的通訊通道,并通過(guò)通訊通道向其它服務(wù)器發(fā)送指示消息,指示消息用于指示其它應(yīng)用服務(wù)器從對(duì)應(yīng)的本地緩存中刪除待刪除數(shù)據(jù),其它應(yīng)用服務(wù)器是指應(yīng)用服務(wù)器集群中與遠(yuǎn)程存儲(chǔ)服務(wù)器已建立連接的應(yīng)用服務(wù)器。

本申請(qǐng)實(shí)施例裝置的各功能模塊的功能,可以通過(guò)上述方法實(shí)施例的各步驟來(lái)實(shí)現(xiàn),因此,本申請(qǐng)?zhí)峁┑难b置的具體工作過(guò)程,在此不復(fù)贅述。

本申請(qǐng)實(shí)施例提供的應(yīng)用服務(wù)器,確定單元401確定待寫入數(shù)據(jù)。存儲(chǔ)單元402將待寫入數(shù)據(jù)存儲(chǔ)到本地緩存中。發(fā)送單元403向遠(yuǎn)程存儲(chǔ)服務(wù)器發(fā)送第一遠(yuǎn)程調(diào)用請(qǐng)求,該第一遠(yuǎn)程調(diào)用請(qǐng)求包括待寫入數(shù)據(jù),第一遠(yuǎn)程調(diào)用請(qǐng)求用于指示遠(yuǎn)程存儲(chǔ)服務(wù)器將待寫入數(shù)據(jù)存儲(chǔ)到遠(yuǎn)程存儲(chǔ)服務(wù)器中。由此,可以提高整個(gè)應(yīng)用服務(wù)器集群的數(shù)據(jù)的訪問(wèn)效率。

與上述數(shù)據(jù)存儲(chǔ)方法對(duì)應(yīng)地,本申請(qǐng)實(shí)施例還提供的一種遠(yuǎn)程存儲(chǔ)服務(wù)器,如圖5所示,該遠(yuǎn)程存儲(chǔ)服務(wù)器包括:

接收單元501,用于接收第一應(yīng)用服務(wù)器在將待寫入數(shù)據(jù)存儲(chǔ)到本地緩存之后發(fā)送的第一遠(yuǎn)程調(diào)用請(qǐng)求,第一應(yīng)用服務(wù)器為用于部署同一業(yè)務(wù)系統(tǒng)的應(yīng)用服務(wù)器集群中的任一應(yīng)用服務(wù)器,第一遠(yuǎn)程調(diào)用請(qǐng)求包括待寫入數(shù)據(jù)。

存儲(chǔ)單元502,用于根據(jù)第一遠(yuǎn)程調(diào)用請(qǐng)求,存儲(chǔ)待寫入數(shù)據(jù)。

可選地,第一遠(yuǎn)程調(diào)用請(qǐng)求還包括第一應(yīng)用服務(wù)器的地址。

存儲(chǔ)單元502具體用于:

根據(jù)地址,從控制單元中查找第一應(yīng)用服務(wù)器;

若查找到第一應(yīng)用服務(wù)器,則存儲(chǔ)待寫入數(shù)據(jù);

若未查找到第一應(yīng)用服務(wù)器,則建立與第一應(yīng)用服務(wù)器的通訊通道,為通訊通道分配通道標(biāo)識(shí),并在控制單元中記錄地址與通道標(biāo)識(shí)的對(duì)應(yīng)關(guān)系,存儲(chǔ)待寫入數(shù)據(jù)。

可選地,該遠(yuǎn)程存儲(chǔ)服務(wù)器還可以包括:第一查找單元503和發(fā)送單元504。

接收單元501,還用于接收第一應(yīng)用服務(wù)器在根據(jù)調(diào)用方發(fā)送的待讀取數(shù)據(jù)的第一標(biāo)識(shí),從本地緩存中未查找到待讀取數(shù)據(jù)時(shí)發(fā)送的第二遠(yuǎn)程調(diào)用請(qǐng)求,第二遠(yuǎn)程調(diào)用請(qǐng)求包括第一標(biāo)識(shí)。

第一查找單元503,用于根據(jù)接收單元501接收的第一標(biāo)識(shí),查找待讀取數(shù)據(jù)。

發(fā)送單元504,用于若第一查找單元503查找到待讀取數(shù)據(jù),則向第一應(yīng)用服務(wù)器返回待讀取數(shù)據(jù),以用于第一應(yīng)用服務(wù)器將待讀取數(shù)據(jù)存儲(chǔ)到本地緩存中,并向調(diào)用方返回待讀取數(shù)據(jù)。

可選地,第二遠(yuǎn)程調(diào)用請(qǐng)求還包括第一應(yīng)用服務(wù)器的地址。

第一查找單元503具體用于:

根據(jù)地址,從控制單元中查找第一應(yīng)用服務(wù)器;

若查找到第一應(yīng)用服務(wù)器,則根據(jù)第一標(biāo)識(shí),查找待讀取數(shù)據(jù);

若未查找到第一應(yīng)用服務(wù)器,則建立與第一應(yīng)用服務(wù)器的通訊通道,為通訊通道分配通道標(biāo)識(shí),并在控制單元中記錄地址與通道標(biāo)識(shí)的對(duì)應(yīng)關(guān)系,根據(jù)第一標(biāo)識(shí),查找待讀取數(shù)據(jù)。

可選地,該遠(yuǎn)程存儲(chǔ)服務(wù)器還可以包括:第二查找單元505和獲取單元506。

接收單元501,還用于接收第一應(yīng)用服務(wù)器在根據(jù)待刪除數(shù)據(jù)的第二標(biāo)識(shí),從本地緩存中查找并刪除待刪除數(shù)據(jù)之后發(fā)送的第三遠(yuǎn)程調(diào)用請(qǐng)求,第三遠(yuǎn)程調(diào)用請(qǐng)求包括第二標(biāo)識(shí)。

第二查找單元505,用于根據(jù)接收單元501接收的第二標(biāo)識(shí),查找并刪除待刪除數(shù)據(jù)。

獲取單元506,用于從控制單元中獲取應(yīng)用服務(wù)器集群中與遠(yuǎn)程存儲(chǔ)服務(wù)器已建立連接的其它應(yīng)用服務(wù)器的地址,并獲取地址對(duì)應(yīng)的通道標(biāo)識(shí)。

發(fā)送單元504,還用于通過(guò)獲取單元506獲取的通道標(biāo)識(shí)對(duì)應(yīng)的通訊通道向其它應(yīng)用服務(wù)器發(fā)送指示消息,指示消息用于指示其它應(yīng)用服務(wù)器從對(duì)應(yīng)的本地緩存中查找并刪除待刪除數(shù)據(jù)。

本申請(qǐng)實(shí)施例裝置的各功能模塊的功能,可以通過(guò)上述方法實(shí)施例的各步驟來(lái)實(shí)現(xiàn),因此,本申請(qǐng)?zhí)峁┑难b置的具體工作過(guò)程,在此不復(fù)贅述。

本申請(qǐng)實(shí)施例提供的遠(yuǎn)程存儲(chǔ)服務(wù)器,接收單元501接收第一應(yīng)用服務(wù)器在將待寫入數(shù)據(jù)存儲(chǔ)到本地緩存之后發(fā)送的第一遠(yuǎn)程調(diào)用請(qǐng)求,第一應(yīng)用服務(wù)器為用于部署同一業(yè)務(wù)系統(tǒng)的應(yīng)用服務(wù)器集群中的任一應(yīng)用服務(wù)器,第一遠(yuǎn)程調(diào)用請(qǐng)求包括待寫入數(shù)據(jù)。存儲(chǔ)單元502根據(jù)第一遠(yuǎn)程調(diào)用請(qǐng)求,存儲(chǔ)待寫入數(shù)據(jù)。由此,可以避免現(xiàn)有技術(shù)的數(shù)據(jù)熱點(diǎn)問(wèn)題,從而可以提高遠(yuǎn)程存儲(chǔ)服務(wù)器的性能。

本領(lǐng)域技術(shù)人員應(yīng)該可以意識(shí)到,在上述一個(gè)或多個(gè)示例中,本發(fā)明所描述的功能可以用硬件、軟件、固件或它們的任意組合來(lái)實(shí)現(xiàn)。當(dāng)使用軟件實(shí)現(xiàn)時(shí),可以將這些功能存儲(chǔ)在計(jì)算機(jī)可讀介質(zhì)中或者作為計(jì)算機(jī)可讀介質(zhì)上的一個(gè)或多個(gè)指令或代碼進(jìn)行傳輸。

以上所述的具體實(shí)施方式,對(duì)本發(fā)明的目的、技術(shù)方案和有益效果進(jìn)行了進(jìn)一步詳細(xì)說(shuō)明,所應(yīng)理解的是,以上所述僅為本發(fā)明的具體實(shí)施方式而已,并不用于限定本發(fā)明的保護(hù)范圍,凡在本發(fā)明的技術(shù)方案的基礎(chǔ)之上,所做的任何修改、等同替換、改進(jìn)等,均應(yīng)包括在本發(fā)明的保護(hù)范圍之內(nèi)。

當(dāng)前第1頁(yè)1 2 
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1