国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

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

      文檔序號(hào):11386549閱讀:209來(lái)源:國(guó)知局
      緩存數(shù)據(jù)更新的方法、裝置及系統(tǒng)與流程

      本發(fā)明涉及數(shù)據(jù)技術(shù)領(lǐng)域,尤其涉及一種緩存數(shù)據(jù)更新的方法、裝置及系統(tǒng)。



      背景技術(shù):

      隨著互聯(lián)網(wǎng)和智能終端的發(fā)展,應(yīng)用的使用在當(dāng)前越來(lái)越多樣化,當(dāng)1個(gè)應(yīng)用在多臺(tái)服務(wù)器部署時(shí),該多臺(tái)服務(wù)器一般需要共用同一套數(shù)據(jù)存儲(chǔ)數(shù)據(jù)庫(kù),以保證應(yīng)用的正常運(yùn)行。在多服務(wù)器模式下,為了提高數(shù)據(jù)的訪問(wèn)性能,針對(duì)那些數(shù)據(jù)量小、更新不太頻繁并且訪問(wèn)量很大的數(shù)據(jù),比如字典表、參數(shù)表、區(qū)域信息等,一般采用將該類數(shù)據(jù)存儲(chǔ)到服務(wù)器的本地緩存中。當(dāng)將數(shù)據(jù)存儲(chǔ)到服務(wù)器的本地緩存中時(shí),需要考慮緩存到服務(wù)器本地的數(shù)據(jù)和數(shù)據(jù)庫(kù)中的數(shù)據(jù)一致性問(wèn)題,比如:應(yīng)用對(duì)應(yīng)的數(shù)據(jù)庫(kù)中的數(shù)據(jù)進(jìn)行了修改,那么需要用到該修改數(shù)據(jù)的多臺(tái)服務(wù)器可以快速更新自己的本地緩存中的數(shù)據(jù),以保證緩存到服務(wù)器本地的數(shù)據(jù)和數(shù)據(jù)庫(kù)中的數(shù)據(jù)一致。

      為了保證緩存到服務(wù)器本地的數(shù)據(jù)和數(shù)據(jù)庫(kù)中的數(shù)據(jù)一致,目前采用重啟服務(wù)器的方式、服務(wù)器定時(shí)查詢數(shù)據(jù)庫(kù)的數(shù)據(jù)內(nèi)容的方式或者推送消息的方式進(jìn)行服務(wù)器本地緩存數(shù)據(jù)的更新。其中,重啟服務(wù)器的方式,太麻煩而且可能還會(huì)造成外部訪問(wèn)失?。环?wù)器定時(shí)查詢數(shù)據(jù)庫(kù)的數(shù)據(jù)內(nèi)容的方式,由于需要服務(wù)器定時(shí)將本地緩存的數(shù)據(jù)從本地緩存中讀出并逐一的與從數(shù)據(jù)庫(kù)中獲取的數(shù)據(jù)進(jìn)行對(duì)比,這樣做會(huì)浪費(fèi)很多服務(wù)器資源,而且對(duì)緩存中的數(shù)據(jù)讀出寫入太頻繁的操作,也會(huì)增加數(shù)據(jù)出錯(cuò)的概率;推送的消息的方式,需要維護(hù)一套推送機(jī)制,維護(hù)成本較高。



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

      有鑒于此,本發(fā)明實(shí)施例提供一種緩存數(shù)據(jù)更新的方法、裝置及系統(tǒng), 主要目的在于能夠在保證應(yīng)用正常訪問(wèn)數(shù)據(jù)的前提下,使得維護(hù)成本和占用資源都較低,并且操作簡(jiǎn)單。

      為達(dá)到上述目的,本發(fā)明提供如下技術(shù)方案:

      一方面,本發(fā)明提供一種緩存數(shù)據(jù)更新的方法,包括:

      業(yè)務(wù)服務(wù)器啟動(dòng)時(shí),向數(shù)據(jù)庫(kù)服務(wù)器獲取并加載需要緩存到所述業(yè)務(wù)服務(wù)器本地緩存的緩存數(shù)據(jù)和所述緩存數(shù)據(jù)對(duì)應(yīng)的緩存版本信息表,所述緩存版本信息表包含緩存數(shù)據(jù)的數(shù)據(jù)類型和緩存版本信息;

      所述業(yè)務(wù)服務(wù)器按照預(yù)定時(shí)間規(guī)則,確定不同數(shù)據(jù)類型的緩存版本信息是否與對(duì)應(yīng)數(shù)據(jù)在數(shù)據(jù)庫(kù)服務(wù)器中的數(shù)據(jù)庫(kù)版本信息一致;

      若確定所述緩存版本信息與所述數(shù)據(jù)庫(kù)版本信息不一致,則更新所述緩存數(shù)據(jù)和所述緩存版本信息表。

      一方面,本發(fā)明還提供另一種緩存數(shù)據(jù)更新的方法,包括:

      數(shù)據(jù)庫(kù)服務(wù)器生成并保存數(shù)據(jù)庫(kù)版本信息表,所述數(shù)據(jù)庫(kù)版本信息表包括數(shù)據(jù)庫(kù)數(shù)據(jù)的數(shù)據(jù)庫(kù)版本信息和數(shù)據(jù)類型;

      在業(yè)務(wù)服務(wù)器啟動(dòng)時(shí),向所述業(yè)務(wù)服務(wù)器發(fā)送所述業(yè)務(wù)服務(wù)器需要緩存到所述業(yè)務(wù)服務(wù)器本地緩存的緩存數(shù)據(jù)和所述緩存數(shù)據(jù)對(duì)應(yīng)的緩存版本信息表。

      另一方面,本發(fā)明提供一種業(yè)務(wù)服務(wù)器,包括:

      加載單元,用于在所述業(yè)務(wù)服務(wù)器啟動(dòng)時(shí),向數(shù)據(jù)庫(kù)服務(wù)器獲取并加載需要緩存到所述業(yè)務(wù)服務(wù)器本地緩存的緩存數(shù)據(jù)和所述緩存數(shù)據(jù)對(duì)應(yīng)的緩存版本信息表,所述緩存版本信息表包含緩存數(shù)據(jù)的數(shù)據(jù)類型和緩存版本信息;

      確定單元,用于按照預(yù)定時(shí)間規(guī)則,確定不同數(shù)據(jù)類型的緩存版本信息是否與對(duì)應(yīng)數(shù)據(jù)在數(shù)據(jù)庫(kù)服務(wù)器中的數(shù)據(jù)庫(kù)版本信息一致;

      更新單元,用于在確定所述緩存版本信息與所述數(shù)據(jù)庫(kù)版本信息不一致時(shí),更新所述緩存數(shù)據(jù)和所述緩存版本信息表。

      另一方面,本發(fā)明還提供一種數(shù)據(jù)庫(kù)服務(wù)器,包括:

      生成單元,用于生成并保存數(shù)據(jù)庫(kù)版本信息表,所述數(shù)據(jù)庫(kù)版本信息表包括數(shù)據(jù)庫(kù)數(shù)據(jù)的數(shù)據(jù)庫(kù)版本信息和數(shù)據(jù)類型;

      第一發(fā)送單元,用于在業(yè)務(wù)服務(wù)器啟動(dòng)時(shí),向所述業(yè)務(wù)服務(wù)器發(fā)送所述業(yè)務(wù)服務(wù)器需要緩存到所述業(yè)務(wù)服務(wù)器本地緩存的緩存數(shù)據(jù)和所述緩存數(shù)據(jù)對(duì)應(yīng)的緩存版本信息表。

      再一方面,本發(fā)明還提供一種緩存數(shù)據(jù)更新的系統(tǒng),包括如上所述的數(shù)據(jù)庫(kù)服務(wù)器和多個(gè)如上所述的業(yè)務(wù)服務(wù)器,所述多個(gè)業(yè)務(wù)服務(wù)器共用所述數(shù)據(jù)庫(kù)服務(wù)器。

      本發(fā)明實(shí)施例提供的一種緩存數(shù)據(jù)更新的方法、裝置及系統(tǒng),業(yè)務(wù)服務(wù)器在緩存數(shù)據(jù)時(shí),還保存一張記錄緩存數(shù)據(jù)類型和緩存數(shù)據(jù)對(duì)應(yīng)版本信息的緩存版本信息表;將緩存數(shù)據(jù)和緩存版本信息表加載到業(yè)務(wù)服務(wù)器的本地緩存后,業(yè)務(wù)服務(wù)器會(huì)按照預(yù)定時(shí)間規(guī)則,確定該緩存版本信息表中不同數(shù)據(jù)類型的緩存版本信息是否與數(shù)據(jù)庫(kù)服務(wù)器中的數(shù)據(jù)庫(kù)版本信息是否一致,在不一致的情況下,進(jìn)行緩存數(shù)據(jù)和緩存版本信息表的更新。與現(xiàn)有技術(shù)相比,本發(fā)明的整個(gè)緩存數(shù)據(jù)更新僅僅是對(duì)緩存版本信息表進(jìn)行查詢,而非對(duì)緩存數(shù)據(jù)進(jìn)行查詢,相比節(jié)省了很多業(yè)務(wù)服務(wù)器資源,降低了緩存數(shù)據(jù)因讀出寫入導(dǎo)致的錯(cuò)誤;當(dāng)需要進(jìn)行更新時(shí),是根據(jù)查詢版本信息表的結(jié)果進(jìn)行的,不用重啟業(yè)務(wù)服務(wù)器,相比更新操作簡(jiǎn)單,并且保證業(yè)務(wù)服務(wù)器的業(yè)務(wù)正常進(jìn)行;各個(gè)業(yè)務(wù)服務(wù)器各自查詢本地的版本信息表,進(jìn)行本地緩存數(shù)據(jù)的更新,不用使用其他機(jī)制輔助進(jìn)行,維護(hù)成本較低。綜上,本發(fā)明提供的技術(shù)方案能夠在保證應(yīng)用正常訪問(wèn)數(shù)據(jù)的前提下,使得維護(hù)成本和占用資源都較低,并且操作簡(jiǎn)單。

      附圖說(shuō)明

      通過(guò)閱讀下文優(yōu)選實(shí)施方式的詳細(xì)描述,各種其他的優(yōu)點(diǎn)和益處對(duì)于本領(lǐng)域普通技術(shù)人員將變得清楚明了。附圖僅用于示出優(yōu)選實(shí)施方式的目的,而并不認(rèn)為是對(duì)本發(fā)明的限制。而且在整個(gè)附圖中,用相同的參考符號(hào)表示相同的部件。在附圖中:

      圖1示出了本發(fā)明實(shí)施例提供的業(yè)務(wù)服務(wù)器側(cè)的緩存數(shù)據(jù)更新的方法流程圖;

      圖2示出了本發(fā)明實(shí)施例提供的數(shù)據(jù)庫(kù)服務(wù)器側(cè)的緩存數(shù)據(jù)更新的方法流程圖;

      圖3示出了本發(fā)明實(shí)施例提供的確定不同數(shù)據(jù)類型的緩存版本信息是否與對(duì)應(yīng)數(shù)據(jù)在數(shù)據(jù)庫(kù)服務(wù)器中的數(shù)據(jù)庫(kù)版本信息一致的方法流程圖;

      圖4示出了本發(fā)明實(shí)施例提供的一種緩存數(shù)據(jù)更新的方法流程圖;

      圖5示出了本發(fā)明實(shí)施例提供的另一種緩存數(shù)據(jù)更新的方法流程圖;

      圖6示出了本發(fā)明實(shí)施例提供的另一種緩存數(shù)據(jù)更新的方法流程圖;

      圖7示出了本發(fā)明實(shí)施例提供的數(shù)據(jù)庫(kù)服務(wù)器側(cè)的數(shù)據(jù)更新方法的流程圖;

      圖8示出了本發(fā)明實(shí)施例提供的一種業(yè)務(wù)服務(wù)器的組成框圖;

      圖9示出了本發(fā)明實(shí)施例提供的另一種業(yè)務(wù)服務(wù)器的組成框圖;

      圖10示出了本發(fā)明實(shí)施例提供的另一種業(yè)務(wù)服務(wù)器的組成框圖;

      圖11示出了本發(fā)明實(shí)施例提供的一種數(shù)據(jù)庫(kù)服務(wù)器的組成框圖;

      圖12示出了本發(fā)明實(shí)施例提供的另一種數(shù)據(jù)庫(kù)服務(wù)器的組成框圖;

      圖13示出了本發(fā)明實(shí)施例提供的另一種數(shù)據(jù)庫(kù)服務(wù)器的組成框圖;

      圖14示出了本發(fā)明實(shí)施例提供的一種緩存數(shù)據(jù)更新的系統(tǒng)框圖。

      具體實(shí)施方式

      下面將參照附圖更詳細(xì)地描述本公開的示例性實(shí)施例。雖然附圖中顯示了本公開的示例性實(shí)施例,然而應(yīng)當(dāng)理解,可以以各種形式實(shí)現(xiàn)本公開而不應(yīng)被這里闡述的實(shí)施例所限制。相反,提供這些實(shí)施例是為了能夠更透徹地理解本公開,并且能夠?qū)⒈竟_的范圍完整的傳達(dá)給本領(lǐng)域的技術(shù)人員。

      本發(fā)明實(shí)施例提供一種緩存數(shù)據(jù)更新的方法,如圖1所示,包括:

      101、業(yè)務(wù)服務(wù)器啟動(dòng)時(shí),向數(shù)據(jù)庫(kù)服務(wù)器獲取并加載需要緩存到所述業(yè)務(wù)服務(wù)器本地緩存的緩存數(shù)據(jù)和所述緩存數(shù)據(jù)對(duì)應(yīng)的緩存版本信息表,所述緩存版本信息表包含緩存數(shù)據(jù)的數(shù)據(jù)類型和緩存版本信息。

      該處的業(yè)務(wù)服務(wù)器可以是負(fù)載均衡下的多個(gè)服務(wù)器,也可以是獨(dú)立服務(wù)的獨(dú)立業(yè)務(wù)服務(wù)器,具體的本發(fā)明實(shí)施例對(duì)此不進(jìn)行限定。

      業(yè)務(wù)數(shù)據(jù)一般存放在數(shù)據(jù)庫(kù)服務(wù)器中供共用方共同使用,為提高業(yè)務(wù)數(shù)據(jù)的訪問(wèn)性能,需要將業(yè)務(wù)數(shù)據(jù)加載到業(yè)務(wù)服務(wù)器本地緩存;而將業(yè)務(wù)數(shù)據(jù)緩存在業(yè)務(wù)服務(wù)器本地,一般是在業(yè)務(wù)服務(wù)器啟動(dòng)時(shí),向數(shù)據(jù)庫(kù)服務(wù) 器獲取并加載在業(yè)務(wù)服務(wù)器的本地緩存中。

      當(dāng)將業(yè)務(wù)數(shù)據(jù)加載到業(yè)務(wù)服務(wù)器的本地緩存中后,為保證緩存中的副本數(shù)據(jù)與數(shù)據(jù)庫(kù)中的數(shù)據(jù)一致,確保業(yè)務(wù)系統(tǒng)或者產(chǎn)品的客服端的輸入與輸出的正確性,當(dāng)數(shù)據(jù)庫(kù)中的數(shù)據(jù)發(fā)生變更,緩存有對(duì)應(yīng)數(shù)據(jù)的業(yè)務(wù)服務(wù)器需要快速更新自己的本地緩存中的數(shù)據(jù)。本發(fā)明實(shí)施例通過(guò)維護(hù)所述緩存數(shù)據(jù)對(duì)應(yīng)的緩存版本信息表實(shí)現(xiàn)緩存數(shù)據(jù)的更新。具體需要在獲取需要緩存數(shù)據(jù)的同時(shí)獲取該緩存數(shù)據(jù)對(duì)應(yīng)的緩存版本信息表,該緩存版本信息表中可以包含緩存數(shù)據(jù)的數(shù)據(jù)類型和緩存版本信息。

      其中,根據(jù)業(yè)務(wù)的不同對(duì)應(yīng)緩存數(shù)據(jù)的類型不同,例如緩存數(shù)據(jù)的類型為字典表、參數(shù)表、區(qū)域信息等。其中,該緩存版本信息為區(qū)分同一類型不同版本的信息,由于版本不同,導(dǎo)致該類型的緩存數(shù)據(jù)內(nèi)容不同。該緩存版本信息可以為緩存版本號(hào),該版本號(hào)可以有固定的命名方式,如1.a.1版,1.b.1版,也可以用時(shí)間進(jìn)行命名,例如2003版,2015版;也可以是其他任一形式,只要能區(qū)分不同內(nèi)容就可以。

      102、所述業(yè)務(wù)服務(wù)器按照預(yù)定時(shí)間規(guī)則查詢所述緩存版本信息表,確定不同數(shù)據(jù)類型的緩存版本信息是否與對(duì)應(yīng)數(shù)據(jù)在數(shù)據(jù)庫(kù)服務(wù)器中的數(shù)據(jù)庫(kù)版本信息一致。

      在將緩存數(shù)據(jù)以及該緩存數(shù)據(jù)對(duì)應(yīng)的緩存版本信息表緩存在業(yè)務(wù)服務(wù)器的本地緩存之后,業(yè)務(wù)服務(wù)器按照預(yù)定時(shí)間規(guī)則查詢所述緩存版本信息表。其中,該預(yù)定時(shí)間規(guī)則可以為預(yù)定周期,也可以為預(yù)定時(shí)間,也可以為其他形式,具體的本發(fā)明實(shí)施例對(duì)此不進(jìn)行限制。在具體實(shí)施時(shí)可以采用啟動(dòng)定時(shí)器的方式實(shí)現(xiàn),該定時(shí)器可以設(shè)定查詢的預(yù)定時(shí)間,例如每天的24時(shí);也可以設(shè)定查詢的預(yù)定周期時(shí)長(zhǎng),例如5秒,或者1小時(shí)。

      由于業(yè)務(wù)服務(wù)器本地緩存中存儲(chǔ)的不同數(shù)據(jù)類型的緩存版本信息,是在業(yè)務(wù)服務(wù)器啟動(dòng)時(shí)從數(shù)據(jù)庫(kù)服務(wù)器獲取的,其僅是數(shù)據(jù)庫(kù)服務(wù)器中數(shù)據(jù)庫(kù)版本信息的一個(gè)備份,兩者應(yīng)該一致。但是當(dāng)修改了數(shù)據(jù)庫(kù)服務(wù)器中的數(shù)據(jù)及對(duì)應(yīng)的版本信息之后,若業(yè)務(wù)服務(wù)器中的緩存版本信息沒(méi)有及時(shí)修改,則會(huì)出現(xiàn)緩存版本信息和數(shù)據(jù)庫(kù)版本信息不一致的情況,當(dāng)不一致時(shí),就要業(yè)務(wù)服務(wù)器及時(shí)更新其本地緩存中對(duì)應(yīng)的緩存數(shù)據(jù),以保證與數(shù)據(jù)庫(kù) 服務(wù)器中的數(shù)據(jù)一致。

      103、若確定所述緩存版本信息與所述數(shù)據(jù)庫(kù)版本信息不一致,則更新所述緩存數(shù)據(jù)和所述緩存版本信息表。

      在更新所述緩存數(shù)據(jù)和所述緩存版本信息表時(shí),可以更新所述業(yè)務(wù)服務(wù)器中的所有緩存數(shù)據(jù),為了提高更新效率也可以更新版本信息不一致的數(shù)據(jù),具體的本發(fā)明實(shí)施例對(duì)此不進(jìn)行限制,可以根據(jù)具體需求具體實(shí)施。

      本發(fā)明實(shí)施例還提供一種緩存數(shù)據(jù)更新的方法,如圖2所示,該方法包括:

      201、數(shù)據(jù)庫(kù)服務(wù)器生成并保存數(shù)據(jù)庫(kù)版本信息表,所述數(shù)據(jù)庫(kù)版本信息表包括數(shù)據(jù)庫(kù)數(shù)據(jù)的數(shù)據(jù)庫(kù)版本信息和數(shù)據(jù)類型。

      當(dāng)向數(shù)據(jù)庫(kù)服務(wù)器寫入對(duì)應(yīng)業(yè)務(wù)的數(shù)據(jù)時(shí),生成該業(yè)務(wù)對(duì)應(yīng)的數(shù)據(jù)庫(kù)版本信息,并將該數(shù)據(jù)的數(shù)據(jù)類型和數(shù)據(jù)庫(kù)版本信息存儲(chǔ)在數(shù)據(jù)庫(kù)版本信息表中,以便后續(xù)查詢使用。其中,由于緩存版本信息表是數(shù)據(jù)庫(kù)版本信息表的副本,關(guān)于數(shù)據(jù)庫(kù)版本信息表的相關(guān)內(nèi)容可以參考緩存版本信息表的相關(guān)說(shuō)明,此處將不再贅述。

      202、在業(yè)務(wù)服務(wù)器啟動(dòng)時(shí),向所述業(yè)務(wù)服務(wù)器發(fā)送所述業(yè)務(wù)服務(wù)器需要緩存到所述業(yè)務(wù)服務(wù)器本地緩存的緩存數(shù)據(jù)和所述緩存數(shù)據(jù)對(duì)應(yīng)的緩存版本信息表。

      在業(yè)務(wù)服務(wù)器啟動(dòng)時(shí),業(yè)務(wù)服務(wù)器會(huì)向數(shù)據(jù)庫(kù)服務(wù)器發(fā)送一個(gè)獲取需要緩存到該業(yè)務(wù)服務(wù)器的數(shù)據(jù)和該數(shù)據(jù)對(duì)應(yīng)的緩存版本信息表的獲取請(qǐng)求,該數(shù)據(jù)庫(kù)服務(wù)器接收到該獲取請(qǐng)求后,便向所述業(yè)務(wù)服務(wù)器發(fā)送所述業(yè)務(wù)服務(wù)器需要緩存到所述業(yè)務(wù)服務(wù)器本地緩存的緩存數(shù)據(jù)和所述緩存數(shù)據(jù)對(duì)應(yīng)的緩存版本信息表。

      本發(fā)明實(shí)施例中,業(yè)務(wù)服務(wù)器在緩存數(shù)據(jù)時(shí),還保存一張記錄緩存數(shù)據(jù)類型和緩存數(shù)據(jù)對(duì)應(yīng)版本信息的緩存版本信息表;將緩存數(shù)據(jù)和緩存版本信息表加載到業(yè)務(wù)服務(wù)器的本地緩存后,業(yè)務(wù)服務(wù)器會(huì)按照預(yù)定時(shí)間規(guī)則,確定該緩存版本信息表中不同數(shù)據(jù)類型的緩存版本信息是否與數(shù)據(jù)庫(kù)服務(wù)器中的數(shù)據(jù)庫(kù)版本信息一致,在不一致的情況下,進(jìn)行緩存數(shù)據(jù)和緩存版本信息表的更新。與現(xiàn)有技術(shù)相比,本發(fā)明的整個(gè)緩存數(shù)據(jù)更新僅僅 是對(duì)緩存版本信息表進(jìn)行查詢,而非對(duì)緩存數(shù)據(jù)進(jìn)行查詢,相比節(jié)省了很多業(yè)務(wù)服務(wù)器資源,降低了緩存數(shù)據(jù)因讀出寫入導(dǎo)致的錯(cuò)誤;當(dāng)需要進(jìn)行更新時(shí),是根據(jù)查詢版本信息表的結(jié)果進(jìn)行的,不用重啟業(yè)務(wù)服務(wù)器,相比更新操作簡(jiǎn)單,并且保證業(yè)務(wù)服務(wù)器的業(yè)務(wù)正常進(jìn)行;各個(gè)業(yè)務(wù)服務(wù)器各自查詢本地的版本信息表,進(jìn)行本地緩存數(shù)據(jù)的更新,不用使用其他機(jī)制輔助進(jìn)行,維護(hù)成本較低。綜上,本發(fā)明提供的技術(shù)方案能夠在保證應(yīng)用正常訪問(wèn)數(shù)據(jù)的前提下,使得維護(hù)成本和占用資源都較低,并且操作簡(jiǎn)單。

      為了實(shí)現(xiàn)業(yè)務(wù)服務(wù)器本地緩存數(shù)據(jù)的及時(shí)更新,所述業(yè)務(wù)服務(wù)器需要按照預(yù)定時(shí)間規(guī)則,確定不同數(shù)據(jù)類型的緩存版本信息是否與對(duì)應(yīng)數(shù)據(jù)在數(shù)據(jù)庫(kù)服務(wù)器中的數(shù)據(jù)庫(kù)版本信息一致。本發(fā)明實(shí)施例中,確定不同數(shù)據(jù)類型的緩存版本信息是否與對(duì)應(yīng)數(shù)據(jù)在數(shù)據(jù)庫(kù)服務(wù)器中的數(shù)據(jù)庫(kù)版本信息一致可以采用但不局限于以下的方法實(shí)現(xiàn),該方法如圖3所示,包括:

      301、所述業(yè)務(wù)服務(wù)器按照預(yù)定時(shí)間規(guī)則向所述數(shù)據(jù)庫(kù)服務(wù)器發(fā)送獲取所述緩存數(shù)據(jù)在數(shù)據(jù)庫(kù)中數(shù)據(jù)庫(kù)版本信息表的請(qǐng)求。

      302、接收所述數(shù)據(jù)庫(kù)服務(wù)器返回的所述數(shù)據(jù)庫(kù)版本信息表,所述數(shù)據(jù)庫(kù)版本信息表包括數(shù)據(jù)庫(kù)版本信息和數(shù)據(jù)類型。

      303、將所述緩存版本信息表中不同數(shù)據(jù)類型的緩存版本信息與所述數(shù)據(jù)庫(kù)版本信息表中對(duì)應(yīng)的數(shù)據(jù)庫(kù)版本信息進(jìn)行比較。根據(jù)比較結(jié)果確定所述緩存版本信息與所述數(shù)據(jù)庫(kù)版本信息不一致。

      304、若所述緩存版本信息低于所述數(shù)據(jù)庫(kù)版本信息,則確定所述緩存版本信息與所述數(shù)據(jù)庫(kù)版本信息不一致。

      所述緩存版本信息低于所述數(shù)據(jù)庫(kù)版本信息,說(shuō)明數(shù)據(jù)庫(kù)服務(wù)器中的數(shù)據(jù)進(jìn)行了更高級(jí)別數(shù)據(jù)的更新,而業(yè)務(wù)服務(wù)器本地緩存中的對(duì)應(yīng)數(shù)據(jù)還沒(méi)有更新,需要業(yè)務(wù)服務(wù)器進(jìn)行對(duì)應(yīng)數(shù)據(jù)的升級(jí)更新。

      305、若所述緩存版本信息高于所述數(shù)據(jù)庫(kù)版本信息,則確定所述緩存版本信息與所述數(shù)據(jù)庫(kù)版本信息不一致。

      所述緩存版本信息高于所述數(shù)據(jù)庫(kù)版本信息,說(shuō)明數(shù)據(jù)庫(kù)服務(wù)器中的數(shù)據(jù)進(jìn)行了降級(jí)更新,該處業(yè)務(wù)服務(wù)器本地緩存中的對(duì)應(yīng)數(shù)據(jù)是否也需要 降級(jí)更新,為保證與數(shù)據(jù)庫(kù)數(shù)據(jù)的對(duì)應(yīng)可以進(jìn)行降級(jí)更新。

      306、若所述緩存信息表中不存在所述數(shù)據(jù)庫(kù)版本信息,則確定所述緩存版本信息與所述數(shù)據(jù)庫(kù)版本信息不一致。

      所述緩存信息表中不存在所述數(shù)據(jù)庫(kù)版本信息,說(shuō)明數(shù)據(jù)庫(kù)服務(wù)器中的數(shù)據(jù)是一個(gè)全新版本的數(shù)據(jù),業(yè)務(wù)服務(wù)器本地緩存中并沒(méi)有該版本的數(shù)據(jù),需要進(jìn)行對(duì)應(yīng)版本數(shù)據(jù)內(nèi)容的更新。

      如上所述的,在進(jìn)行業(yè)務(wù)服務(wù)器本地緩存數(shù)據(jù)的更新時(shí),可以根據(jù)需求進(jìn)行各種形式的更新,該更新包括:

      根據(jù)所述數(shù)據(jù)庫(kù)版本信息表更新所述緩存版本信息表和所述服務(wù)器本地的所有緩存數(shù)據(jù)。

      或者根據(jù)所述數(shù)據(jù)庫(kù)版本信息表更新所述緩存版本信息表,并確定所述緩存版本信息與對(duì)應(yīng)數(shù)據(jù)的數(shù)據(jù)庫(kù)版本信息不一致的數(shù)據(jù)類型,更新版本信息不一致數(shù)據(jù)類型對(duì)應(yīng)的緩存數(shù)據(jù)。其中,當(dāng)更新版本信息不一致數(shù)據(jù)類型對(duì)應(yīng)的緩存數(shù)據(jù)時(shí),更新所述版本信息不一致的數(shù)據(jù)類型對(duì)應(yīng)的所有緩存數(shù)據(jù),也可以所述緩存版本信息表中還包括緩存數(shù)據(jù)的關(guān)鍵字,同一類型下的數(shù)據(jù)包括不同關(guān)鍵字的數(shù)據(jù),更新所述版本信息不一致并且所述關(guān)鍵字不一致的緩存數(shù)據(jù)。具體的,本發(fā)明實(shí)施例對(duì)此不進(jìn)行限制。

      以下實(shí)施例將結(jié)合具體事例闡述各種數(shù)據(jù)更新方法:

      本發(fā)明實(shí)施例以根據(jù)所述數(shù)據(jù)庫(kù)版本信息表更新所述緩存版本信息表和所述服務(wù)器本地的所有緩存數(shù)據(jù)為例具體說(shuō)明,該方法如圖4所示,包括:

      401、所述業(yè)務(wù)服務(wù)器將所述數(shù)據(jù)庫(kù)版本信息表替換為緩存版本信息表。

      402、所述業(yè)務(wù)服務(wù)器根據(jù)所述數(shù)據(jù)庫(kù)版本信息表向所述數(shù)據(jù)庫(kù)服務(wù)器發(fā)送獲取緩存數(shù)據(jù)的請(qǐng)求信息,所述請(qǐng)求信息中包括所述數(shù)據(jù)庫(kù)版本信息表中的所有數(shù)據(jù)類型。

      403、數(shù)據(jù)庫(kù)服務(wù)器接收所述請(qǐng)求,并根據(jù)所述請(qǐng)求獲取所述請(qǐng)求中包括的所有數(shù)據(jù)類型對(duì)應(yīng)的數(shù)據(jù)。

      404、數(shù)據(jù)庫(kù)服務(wù)器將所有數(shù)據(jù)類型對(duì)應(yīng)的數(shù)據(jù)返回給該業(yè)務(wù)服務(wù)器。

      405、業(yè)務(wù)服務(wù)器接收所述數(shù)據(jù)庫(kù)服務(wù)器返回的所述數(shù)據(jù)庫(kù)版本信息表中的所有數(shù)據(jù)類型對(duì)應(yīng)的數(shù)據(jù)。

      406、業(yè)務(wù)服務(wù)器將所述數(shù)據(jù)庫(kù)版本信息表中的所有數(shù)據(jù)類型對(duì)應(yīng)的數(shù)據(jù)替換所述業(yè)務(wù)服務(wù)器本地緩存中的緩存數(shù)據(jù)。

      本發(fā)明實(shí)施例以根據(jù)所述數(shù)據(jù)庫(kù)版本信息表更新所述緩存版本信息表和更新所述版本信息不一致的數(shù)據(jù)類型對(duì)應(yīng)的所有緩存數(shù)據(jù)為例具體說(shuō)明,該方法如圖5所示,包括:

      501、所述業(yè)務(wù)服務(wù)器根據(jù)所述數(shù)據(jù)庫(kù)版本信息表更新所述緩存版本信息表,并確定所述緩存版本信息與對(duì)應(yīng)數(shù)據(jù)的數(shù)據(jù)庫(kù)版本信息不一致的數(shù)據(jù)類型。

      502、所述業(yè)務(wù)服務(wù)器向所述數(shù)據(jù)庫(kù)服務(wù)器發(fā)送獲取緩存數(shù)據(jù)的請(qǐng)求信息,所述請(qǐng)求信息中包括版本信息不一致的數(shù)據(jù)類型。

      503、數(shù)據(jù)庫(kù)服務(wù)器接收所述請(qǐng)求,并根據(jù)所述請(qǐng)求獲取所述請(qǐng)求中包括的版本信息不一致的數(shù)據(jù)類型對(duì)應(yīng)的數(shù)據(jù)。

      504、數(shù)據(jù)庫(kù)服務(wù)器將版本信息不一致的數(shù)據(jù)類型對(duì)應(yīng)的數(shù)據(jù)返回給該業(yè)務(wù)服務(wù)器。

      505、業(yè)務(wù)服務(wù)器接收所述數(shù)據(jù)庫(kù)服務(wù)器返回的版本信息不一致的數(shù)據(jù)類型對(duì)應(yīng)的數(shù)據(jù)。

      506、將版本信息不一致的數(shù)據(jù)類型對(duì)應(yīng)的數(shù)據(jù)替換所述業(yè)務(wù)服務(wù)器本地緩存中對(duì)應(yīng)的緩存數(shù)據(jù)。

      本發(fā)明實(shí)施例以根據(jù)所述數(shù)據(jù)庫(kù)版本信息表更新所述緩存版本信息表和所述版本信息不一致并且所述關(guān)鍵字不一致的緩存數(shù)據(jù)為例具體說(shuō)明,該方法如圖6所示,包括:

      601、所述業(yè)務(wù)服務(wù)器根據(jù)所述數(shù)據(jù)庫(kù)版本信息表更新所述緩存版本信息表,并確定所述緩存版本信息與對(duì)應(yīng)數(shù)據(jù)的數(shù)據(jù)庫(kù)版本信息不一致的數(shù)據(jù)類型。

      602、所述業(yè)務(wù)服務(wù)器確定版本信息不一致數(shù)據(jù)類型中所述關(guān)鍵字不一致的關(guān)鍵字。

      其中,在確定版本信息不一致數(shù)據(jù)類型中所述關(guān)鍵字不一致的關(guān)鍵字 可以采用但不局限于以下的方法實(shí)現(xiàn),該方法包括:

      若原本設(shè)置有關(guān)鍵字,則比對(duì)緩存中的關(guān)鍵字是否與數(shù)據(jù)庫(kù)服務(wù)器中的關(guān)鍵字一致,若不一致,則確定為不一致的關(guān)鍵字,該關(guān)鍵字對(duì)應(yīng)的數(shù)據(jù)需要更新;若原本設(shè)置有關(guān)鍵字,但是關(guān)鍵字沒(méi)有賦值,則查詢到對(duì)應(yīng)關(guān)鍵字被賦值,則確定為不一致的關(guān)鍵字,還可以是其他的方式,只要能夠區(qū)別開關(guān)鍵字對(duì)應(yīng)數(shù)據(jù)是否發(fā)送變化即可,具體的本發(fā)明實(shí)施例對(duì)此不進(jìn)行限制。

      603、所述業(yè)務(wù)服務(wù)器向所述數(shù)據(jù)庫(kù)服務(wù)器發(fā)送獲取緩存數(shù)據(jù)的請(qǐng)求信息,所述請(qǐng)求信息中包括版本信息不一致的數(shù)據(jù)類型以及所述關(guān)鍵字不一致的關(guān)鍵字。

      604、數(shù)據(jù)庫(kù)服務(wù)器接收所述請(qǐng)求,并根據(jù)所述請(qǐng)求獲取所述請(qǐng)求中包括的版本信息不一致的數(shù)據(jù)類型以及所述關(guān)鍵字不一致的關(guān)鍵字對(duì)應(yīng)的數(shù)據(jù)。

      605、數(shù)據(jù)庫(kù)服務(wù)器將版本信息不一致的數(shù)據(jù)類型以及所述關(guān)鍵字不一致的關(guān)鍵字對(duì)應(yīng)的數(shù)據(jù)返回給該業(yè)務(wù)服務(wù)器。

      606、業(yè)務(wù)服務(wù)器接收所述數(shù)據(jù)庫(kù)服務(wù)器返回的版本信息不一致并且所述關(guān)鍵字不一致的關(guān)鍵字對(duì)應(yīng)的數(shù)據(jù)。

      607、業(yè)務(wù)服務(wù)器將版本信息不一致并且所述關(guān)鍵字不一致的關(guān)鍵字對(duì)應(yīng)的數(shù)據(jù)替換所述業(yè)務(wù)服務(wù)器本地緩存中對(duì)應(yīng)的緩存數(shù)據(jù)。

      進(jìn)一步需要說(shuō)明的是,存儲(chǔ)在數(shù)據(jù)庫(kù)服務(wù)器中的數(shù)據(jù),也會(huì)根據(jù)需求不定時(shí)的更新,為實(shí)現(xiàn)業(yè)務(wù)服務(wù)器緩存數(shù)據(jù)的更新,本發(fā)明在將數(shù)據(jù)存入數(shù)據(jù)庫(kù)服務(wù)器之后,還提供如下的方法,如圖7所示,該方法具體為:

      701、監(jiān)控?cái)?shù)據(jù)庫(kù)服務(wù)器中的數(shù)據(jù)是否有更新;若有更新,執(zhí)行702;

      702、將更新的數(shù)據(jù)替換數(shù)據(jù)庫(kù)服務(wù)器中原有的數(shù)據(jù),并生成所述更新的數(shù)據(jù)對(duì)應(yīng)的數(shù)據(jù)庫(kù)版本信息。

      703、更新數(shù)據(jù)庫(kù)版本信息表中的數(shù)據(jù)庫(kù)版本信息。

      另外,不同類型數(shù)據(jù)包含很多不同關(guān)鍵字對(duì)應(yīng)的數(shù)據(jù),在更新數(shù)據(jù)庫(kù)服務(wù)器中的數(shù)據(jù)時(shí),也有可能僅更新同一類型數(shù)據(jù)下的部分?jǐn)?shù)據(jù),當(dāng)更新同一數(shù)據(jù)類型下的部分關(guān)鍵字?jǐn)?shù)據(jù)時(shí),對(duì)該部分?jǐn)?shù)據(jù)的關(guān)鍵字進(jìn)行標(biāo)注, 并更新所述數(shù)據(jù)庫(kù)版本信息表,以便業(yè)務(wù)服務(wù)器進(jìn)行查詢并更新。

      基于上述方法實(shí)施例,本發(fā)明實(shí)施例提供一種業(yè)務(wù)服務(wù)器,如圖8所示,該業(yè)務(wù)服務(wù)器包括:

      加載單元81,用于在所述業(yè)務(wù)服務(wù)器啟動(dòng)時(shí),向數(shù)據(jù)庫(kù)服務(wù)器獲取并加載需要緩存到所述業(yè)務(wù)服務(wù)器本地緩存的緩存數(shù)據(jù)和所述緩存數(shù)據(jù)對(duì)應(yīng)的緩存版本信息表,所述緩存版本信息表包含緩存數(shù)據(jù)的數(shù)據(jù)類型和緩存版本信息;

      確定單元82,用于按照預(yù)定時(shí)間規(guī)則,確定不同數(shù)據(jù)類型的緩存版本信息是否與對(duì)應(yīng)數(shù)據(jù)在數(shù)據(jù)庫(kù)服務(wù)器中的數(shù)據(jù)庫(kù)版本信息一致;

      更新單元83,用于在確定所述緩存版本信息與所述數(shù)據(jù)庫(kù)版本信息不一致時(shí),更新所述緩存數(shù)據(jù)和所述緩存版本信息表。

      進(jìn)一步的,如圖9所示,所述確定單元82包括:

      發(fā)送模塊821,用于按照預(yù)定時(shí)間規(guī)則向所述數(shù)據(jù)庫(kù)服務(wù)器發(fā)送獲取所述緩存數(shù)據(jù)在數(shù)據(jù)庫(kù)中數(shù)據(jù)庫(kù)版本信息表的請(qǐng)求;

      接收模塊822,用于接收所述數(shù)據(jù)庫(kù)服務(wù)器返回的所述數(shù)據(jù)庫(kù)版本信息表,所述數(shù)據(jù)庫(kù)版本信息表包括數(shù)據(jù)庫(kù)版本信息和數(shù)據(jù)類型;

      比較模塊823,用于將所述緩存版本信息表中不同數(shù)據(jù)類型的緩存版本信息與所述數(shù)據(jù)庫(kù)版本信息表中對(duì)應(yīng)的數(shù)據(jù)庫(kù)版本信息進(jìn)行比較;

      確定模塊824,用于在所述緩存版本信息低于所述數(shù)據(jù)庫(kù)版本信息時(shí),確定所述緩存版本信息與所述數(shù)據(jù)庫(kù)版本信息不一致;

      所述確定模塊824還用于,在所述緩存版本信息高于所述數(shù)據(jù)庫(kù)版本信息時(shí),確定所述緩存版本信息與所述數(shù)據(jù)庫(kù)版本信息不一致;

      所述確定模塊824還用于,在所述緩存信息表中不存在所述數(shù)據(jù)庫(kù)版本信息時(shí),確定所述緩存版本信息與所述數(shù)據(jù)庫(kù)版本信息不一致。

      進(jìn)一步的,如圖10所示,所述更新單元83包括:

      第一更新模塊831,用于根據(jù)所述數(shù)據(jù)庫(kù)版本信息表更新所述緩存版本信息表和所述服務(wù)器本地的所有緩存數(shù)據(jù);

      和/或第二更新模塊832,用于根據(jù)所述數(shù)據(jù)庫(kù)版本信息表更新所述緩存版本信息表,并確定所述緩存版本信息與對(duì)應(yīng)數(shù)據(jù)的數(shù)據(jù)庫(kù)版本信息不 一致的數(shù)據(jù)類型,更新版本信息不一致數(shù)據(jù)類型對(duì)應(yīng)的緩存數(shù)據(jù)。

      其中,所述第一更新模塊831用于:將所述數(shù)據(jù)庫(kù)版本信息表替換為緩存版本信息表,并根據(jù)所述數(shù)據(jù)庫(kù)版本信息表向所述數(shù)據(jù)庫(kù)服務(wù)器發(fā)送獲取緩存數(shù)據(jù)的請(qǐng)求信息,所述請(qǐng)求信息中包括所述數(shù)據(jù)庫(kù)版本信息表中的所有數(shù)據(jù)類型;接收所述數(shù)據(jù)庫(kù)服務(wù)器返回的所述數(shù)據(jù)庫(kù)版本信息表中的所有數(shù)據(jù)類型對(duì)應(yīng)的數(shù)據(jù);將所述數(shù)據(jù)庫(kù)版本信息表中的所有數(shù)據(jù)類型對(duì)應(yīng)的數(shù)據(jù)替換所述業(yè)務(wù)服務(wù)器本地緩存中的緩存數(shù)據(jù)。

      所述第二更新模塊832用于:更新所述版本信息不一致的數(shù)據(jù)類型對(duì)應(yīng)的所有緩存數(shù)據(jù);或者所述緩存版本信息表中還包括緩存數(shù)據(jù)的關(guān)鍵字,同一類型下的數(shù)據(jù)包括不同關(guān)鍵字的數(shù)據(jù),更新所述版本信息不一致并且所述關(guān)鍵字不一致的緩存數(shù)據(jù)。

      當(dāng)所述第二更新模塊832用于更新所述版本信息不一致的數(shù)據(jù)類型對(duì)應(yīng)的所有緩存數(shù)據(jù)時(shí),可以采用但不局限于以下的方式實(shí)現(xiàn),該方式包括:向所述數(shù)據(jù)庫(kù)服務(wù)器發(fā)送獲取緩存數(shù)據(jù)的請(qǐng)求信息,所述請(qǐng)求信息中包括版本信息不一致的數(shù)據(jù)類型;接收所述數(shù)據(jù)庫(kù)服務(wù)器返回的版本信息不一致的數(shù)據(jù)類型對(duì)應(yīng)的數(shù)據(jù);將版本信息不一致的數(shù)據(jù)類型對(duì)應(yīng)的數(shù)據(jù)替換所述業(yè)務(wù)服務(wù)器本地緩存中對(duì)應(yīng)的緩存數(shù)據(jù)。

      當(dāng)所述第二更新模塊832用于更新所述版本信息不一致并且所述關(guān)鍵字不一致的緩存數(shù)據(jù)時(shí),可以采用但不局限于以下的方式實(shí)現(xiàn),該方式包括:確定所述關(guān)鍵字不一致的關(guān)鍵字;更新所述版本信息不一致并且所述關(guān)鍵字不一致的緩存數(shù)據(jù)。

      其中,更新所述版本信息不一致并且所述關(guān)鍵字不一致的緩存數(shù)據(jù)包括:所述業(yè)務(wù)服務(wù)器向所述數(shù)據(jù)庫(kù)服務(wù)器發(fā)送獲取緩存數(shù)據(jù)的請(qǐng)求信息,所述請(qǐng)求信息中包括版本信息不一致的數(shù)據(jù)類型以及所述關(guān)鍵字不一致的關(guān)鍵字;接收所述數(shù)據(jù)庫(kù)服務(wù)器返回的版本信息不一致并且所述關(guān)鍵字不一致的關(guān)鍵字對(duì)應(yīng)的數(shù)據(jù);將版本信息不一致并且所述關(guān)鍵字不一致的關(guān)鍵字對(duì)應(yīng)的數(shù)據(jù)替換所述業(yè)務(wù)服務(wù)器本地緩存中對(duì)應(yīng)的緩存數(shù)據(jù)。

      本發(fā)明實(shí)施例還提供一種數(shù)據(jù)庫(kù)服務(wù)器,如圖11所示,該數(shù)據(jù)庫(kù)服務(wù)器包括:

      生成單元91,用于生成并保存數(shù)據(jù)庫(kù)版本信息表,所述數(shù)據(jù)庫(kù)版本信息表包括數(shù)據(jù)庫(kù)數(shù)據(jù)的數(shù)據(jù)庫(kù)版本信息和數(shù)據(jù)類型;

      第一發(fā)送單元92,用于在業(yè)務(wù)服務(wù)器啟動(dòng)時(shí),向所述業(yè)務(wù)服務(wù)器發(fā)送所述業(yè)務(wù)服務(wù)器需要緩存到所述業(yè)務(wù)服務(wù)器本地緩存的緩存數(shù)據(jù)和所述緩存數(shù)據(jù)對(duì)應(yīng)的緩存版本信息表。

      進(jìn)一步的,如圖12所示,該數(shù)據(jù)庫(kù)服務(wù)器,還包括:

      監(jiān)控單元93,用于監(jiān)控?cái)?shù)據(jù)庫(kù)服務(wù)器中的數(shù)據(jù)是否有更新;

      更新單元94,用于在監(jiān)控到有更新,將更新的數(shù)據(jù)替換數(shù)據(jù)庫(kù)服務(wù)器中原有的數(shù)據(jù)

      所述生成單元91還用于,生成所述更新的數(shù)據(jù)對(duì)應(yīng)的數(shù)據(jù)庫(kù)版本信息;

      所述更新單元94還用于,更新數(shù)據(jù)庫(kù)版本信息表中的數(shù)據(jù)庫(kù)版本信息。

      進(jìn)一步的,如圖13所示,該數(shù)據(jù)庫(kù)服務(wù)器還包括:

      接收單元95,用于接收業(yè)務(wù)服務(wù)器發(fā)送的獲取所述緩存數(shù)據(jù)在數(shù)據(jù)庫(kù)中的數(shù)據(jù)庫(kù)版本信息表的請(qǐng)求;

      第二發(fā)送單元96,用于根據(jù)所述請(qǐng)求向所述業(yè)務(wù)服務(wù)器返回的所述數(shù)據(jù)庫(kù)版本信息表,所述數(shù)據(jù)庫(kù)版本信息表包括:所述數(shù)據(jù)庫(kù)版本信息和數(shù)據(jù)類型。

      進(jìn)一步的,所述數(shù)據(jù)庫(kù)版本信息表中還包括數(shù)據(jù)的關(guān)鍵字,同一類型下的數(shù)據(jù)包括不同關(guān)鍵字的數(shù)據(jù);當(dāng)更新同一數(shù)據(jù)類型下的部分關(guān)鍵字?jǐn)?shù)據(jù)時(shí),所述更新單元94還用于,對(duì)該部分?jǐn)?shù)據(jù)的關(guān)鍵字進(jìn)行標(biāo)注,并更新所述數(shù)據(jù)庫(kù)版本信息表。

      本發(fā)明實(shí)施例還提供一種緩存數(shù)據(jù)更新的系統(tǒng),如圖14所示。該系統(tǒng)包括如上所述的數(shù)據(jù)庫(kù)服務(wù)器1001和多個(gè)如上所述的業(yè)務(wù)服務(wù)器1002。所述多個(gè)業(yè)務(wù)服務(wù)器共用所述數(shù)據(jù)庫(kù)服務(wù)器1001。

      本發(fā)明實(shí)施例中,業(yè)務(wù)服務(wù)器在緩存數(shù)據(jù)時(shí),還保存一張記錄緩存數(shù)據(jù)類型和緩存數(shù)據(jù)對(duì)應(yīng)版本信息的緩存版本信息表;將緩存數(shù)據(jù)和緩存版本信息表加載到業(yè)務(wù)服務(wù)器的本地緩存后,業(yè)務(wù)服務(wù)器會(huì)按照預(yù)定時(shí)間規(guī)則,確定該緩存版本信息表中不同數(shù)據(jù)類型的緩存版本信息是否與數(shù)據(jù)庫(kù)服務(wù)器中的數(shù)據(jù)庫(kù)版本信息是否一致,在不一致的情況下,進(jìn)行緩存數(shù)據(jù) 和緩存版本信息表的更新。與現(xiàn)有技術(shù)相比,本發(fā)明的整個(gè)緩存數(shù)據(jù)更新僅僅是對(duì)緩存版本信息表進(jìn)行查詢,而非對(duì)緩存數(shù)據(jù)進(jìn)行查詢,相比節(jié)省了很多業(yè)務(wù)服務(wù)器資源,降低了緩存數(shù)據(jù)因讀出寫入導(dǎo)致的錯(cuò)誤;當(dāng)需要進(jìn)行更新時(shí),是根據(jù)查詢版本信息表的結(jié)果進(jìn)行的,不用重啟業(yè)務(wù)服務(wù)器,相比更新操作簡(jiǎn)單,并且保證業(yè)務(wù)服務(wù)器的業(yè)務(wù)正常進(jìn)行;各個(gè)業(yè)務(wù)服務(wù)器各自查詢本地的版本信息表,進(jìn)行本地緩存數(shù)據(jù)的更新,不用使用其他機(jī)制輔助進(jìn)行,維護(hù)成本較低。綜上,本發(fā)明提供的技術(shù)方案能夠在保證應(yīng)用正常訪問(wèn)數(shù)據(jù)的前提下,使得維護(hù)成本和占用資源都較低,并且操作簡(jiǎn)單。

      所述業(yè)務(wù)服務(wù)器包括處理器和存儲(chǔ)器,上述加載單元、確定單元、更新單元等均作為程序單元存儲(chǔ)在存儲(chǔ)器中,由處理器執(zhí)行存儲(chǔ)在存儲(chǔ)器中的上述程序單元來(lái)實(shí)現(xiàn)相應(yīng)的功能;以及所述數(shù)據(jù)庫(kù)服務(wù)器包括處理器和存儲(chǔ)器,上述生成單元、第一發(fā)送單元、監(jiān)控單元、更新單元、接收單元、第二發(fā)送單元等均作為程序單元存儲(chǔ)在存儲(chǔ)器中,由處理器執(zhí)行存儲(chǔ)在存儲(chǔ)器中的上述程序單元來(lái)實(shí)現(xiàn)相應(yīng)的功能。

      處理器中包含內(nèi)核,由內(nèi)核去存儲(chǔ)器中調(diào)取相應(yīng)的程序單元。內(nèi)核可以設(shè)置一個(gè)或以上,通過(guò)調(diào)整內(nèi)核參數(shù)來(lái)實(shí)現(xiàn)在保證應(yīng)用正常訪問(wèn)數(shù)據(jù)的前提下,使得維護(hù)成本和占用資源都較低,并且操作簡(jiǎn)單。

      存儲(chǔ)器可能包括計(jì)算機(jī)可讀介質(zhì)中的非永久性存儲(chǔ)器,隨機(jī)存取存儲(chǔ)器(ram)和/或非易失性內(nèi)存等形式,如只讀存儲(chǔ)器(rom)或閃存(flashram),存儲(chǔ)器包括至少一個(gè)存儲(chǔ)芯片。

      本申請(qǐng)還提供了一種計(jì)算機(jī)程序產(chǎn)品,當(dāng)在數(shù)據(jù)處理設(shè)備上執(zhí)行時(shí),適于執(zhí)行初始化有如下方法步驟的程序代碼:業(yè)務(wù)服務(wù)器啟動(dòng)時(shí),向數(shù)據(jù)庫(kù)服務(wù)器獲取并加載需要緩存到所述業(yè)務(wù)服務(wù)器本地緩存的緩存數(shù)據(jù)和所述緩存數(shù)據(jù)對(duì)應(yīng)的緩存版本信息表,所述緩存版本信息表包含緩存數(shù)據(jù)的數(shù)據(jù)類型和緩存版本信息;所述業(yè)務(wù)服務(wù)器按照預(yù)定時(shí)間規(guī)則,確定不同數(shù)據(jù)類型的緩存版本信息是否與對(duì)應(yīng)數(shù)據(jù)在數(shù)據(jù)庫(kù)服務(wù)器中的數(shù)據(jù)庫(kù)版本信息一致;若確定所述緩存版本信息與所述數(shù)據(jù)庫(kù)版本信息不一致,則更新所述緩存數(shù)據(jù)和所述緩存版本信息表。數(shù)據(jù)庫(kù)服務(wù)器生成并保存數(shù)據(jù)庫(kù) 版本信息表,所述數(shù)據(jù)庫(kù)版本信息表包括數(shù)據(jù)庫(kù)數(shù)據(jù)的數(shù)據(jù)庫(kù)版本信息和數(shù)據(jù)類型;在業(yè)務(wù)服務(wù)器啟動(dòng)時(shí),向所述業(yè)務(wù)服務(wù)器發(fā)送所述業(yè)務(wù)服務(wù)器需要緩存到所述業(yè)務(wù)服務(wù)器本地緩存的緩存數(shù)據(jù)和所述緩存數(shù)據(jù)對(duì)應(yīng)的緩存版本信息表。

      本領(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ǔ)器、cd-rom、光學(xué)存儲(chǔ)器等)上實(shí)施的計(jì)算機(jī)程序產(chǎn)品的形式。

      本申請(qǐng)是參照根據(jù)本申請(qǐng)實(shí)施例的圖表中圖形的顯示方法、裝置、和計(jì)算機(jī)程序產(chǎn)品的流程圖和/或方框圖來(lái)描述的。應(yīng)理解可由計(jì)算機(jī)程序指令實(shí)現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合??商峁┻@些計(jì)算機(jī)程序指令到通用計(jì)算機(jī)、專用計(jì)算機(jī)、嵌入式處理機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器以產(chǎn)生一個(gè)機(jī)器,使得通過(guò)計(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è)方框中指定的功能的步驟。

      在一個(gè)典型的配置中,計(jì)算設(shè)備包括一個(gè)或多個(gè)處理器(cpu)、輸入/輸出接口、網(wǎng)絡(luò)接口和內(nèi)存。

      存儲(chǔ)器可能包括計(jì)算機(jī)可讀介質(zhì)中的非永久性存儲(chǔ)器,隨機(jī)存取存儲(chǔ)器(ram)和/或非易失性內(nèi)存等形式,如只讀存儲(chǔ)器(rom)或閃存(flashram)。存儲(chǔ)器是計(jì)算機(jī)可讀介質(zhì)的示例。

      計(jì)算機(jī)可讀介質(zhì)包括永久性和非永久性、可移動(dòng)和非可移動(dòng)媒體可以由任何方法或技術(shù)來(lái)實(shí)現(xiàn)信息存儲(chǔ)。信息可以是計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序的模塊或其他數(shù)據(jù)。計(jì)算機(jī)的存儲(chǔ)介質(zhì)的例子包括,但不限于相變內(nèi)存(pram)、靜態(tài)隨機(jī)存取存儲(chǔ)器(sram)、動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(dram)、其他類型的隨機(jī)存取存儲(chǔ)器(ram)、只讀存儲(chǔ)器(rom)、電可擦除可編程只讀存儲(chǔ)器(eeprom)、快閃記憶體或其他內(nèi)存技術(shù)、只讀光盤只讀存儲(chǔ)器(cd-rom)、數(shù)字多功能光盤(dvd)或其他光學(xué)存儲(chǔ)、磁盒式磁帶,磁帶磁磁盤存儲(chǔ)或其他磁性存儲(chǔ)設(shè)備或任何其他非傳輸介質(zhì),可用于存儲(chǔ)可以被計(jì)算設(shè)備訪問(wèn)的信息。按照本文中的界定,計(jì)算機(jī)可讀介質(zhì)不包括暫存電腦可讀媒體(transitorymedia),如調(diào)制的數(shù)據(jù)信號(hào)和載波。

      以上僅為本申請(qǐng)的實(shí)施例而已,并不用于限制本申請(qǐng)。對(duì)于本領(lǐng)域技術(shù)人員來(lái)說(shuō),本申請(qǐng)可以有各種更改和變化。凡在本申請(qǐng)的精神和原理之內(nèi)所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本申請(qǐng)的權(quán)利要求范圍之內(nèi)。

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