專利名稱:節(jié)目的處理方法和系統(tǒng)以及裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明實(shí)施例涉及計(jì)算機(jī)網(wǎng)絡(luò)技術(shù),尤其涉及一種節(jié)目的處理方法和系統(tǒng)以及裝置。
背景技術(shù):
目前,視頻節(jié)目的總量比較龐大,雖然少量的熱點(diǎn)視頻節(jié)目吸引了相當(dāng)大數(shù)量的點(diǎn)擊數(shù),但是,仍然有很大數(shù)量的訪問次數(shù)來(lái)自數(shù)量眾多的冷門視頻節(jié)目(該冷門視頻節(jié)目可以稱之為重尾節(jié)目),雖然這部分需求從每個(gè)冷門視頻節(jié)目平均看來(lái)都不大,但是形成的總體需求仍然不可忽略,從而使得視頻熱度在分布時(shí),滿足重尾特性。對(duì)于少量熱點(diǎn)視頻節(jié)目,因?yàn)樵谡麄€(gè)網(wǎng)絡(luò)中每個(gè)熱點(diǎn)視頻節(jié)目的數(shù)據(jù)都會(huì)有大量副本存儲(chǔ),所以優(yōu)化方式比較直接,但是,對(duì)于大量需求量較少的重尾節(jié)目,由于重尾節(jié)目的數(shù)據(jù)難以在網(wǎng)絡(luò)中形成大量副本,并且涉及的總數(shù)據(jù)量龐大,一般的優(yōu)化方法對(duì)其收效甚微,甚至得不償失,因此,目前極少對(duì)其進(jìn)行優(yōu)化,即直接讓用戶從視頻源服務(wù)器中獲取所需要的重尾節(jié)目。但現(xiàn)有技術(shù)中,由于直接讓用戶從視頻源服務(wù)器中獲取所需要的重尾節(jié)目,因此, 加重了重尾節(jié)目集整體帶來(lái)大量流量對(duì)視頻源服務(wù)器產(chǎn)生的巨大壓力。
發(fā)明內(nèi)容
本發(fā)明實(shí)施例提供一種節(jié)目的處理方法和系統(tǒng)以及裝置,用以實(shí)現(xiàn)了對(duì)重尾節(jié)目的優(yōu)化,有效地緩解了重尾節(jié)目集整體帶來(lái)的大量流量對(duì)源服務(wù)器產(chǎn)生的巨大壓力。本發(fā)明實(shí)施例提供一種節(jié)目的處理方法,包括每隔預(yù)定時(shí)間,根據(jù)預(yù)先存儲(chǔ)的節(jié)目目錄中節(jié)目的名稱對(duì)應(yīng)的訪問數(shù)量,獲取所述節(jié)目的名稱對(duì)應(yīng)的在分布式哈希表網(wǎng)絡(luò)中緩存的副本的理論數(shù)量;判斷所述節(jié)目的名稱對(duì)應(yīng)的在分布式哈希表網(wǎng)絡(luò)中緩存的副本的理論數(shù)量大于還是小于所述節(jié)目的名稱對(duì)應(yīng)的在所述分布式哈希表網(wǎng)絡(luò)中緩存的副本的實(shí)際數(shù)量,若大于,則根據(jù)哈希算法,分別將所述節(jié)目的名稱和新增的副本的編號(hào)進(jìn)行哈希計(jì)算,獲取每個(gè)所述新增的副本的編號(hào)對(duì)應(yīng)的哈希值;將所述節(jié)目的名稱、所述節(jié)目的名稱對(duì)應(yīng)的每個(gè)所述新增的副本的編號(hào)對(duì)應(yīng)的哈希值和所述節(jié)目的名稱對(duì)應(yīng)的源服務(wù)器的地址攜帶在增加副本的消息中發(fā)送給所述分布式哈希表網(wǎng)絡(luò)中與所述哈希值對(duì)應(yīng)的緩存服務(wù)器中,以供所述緩存服務(wù)器根據(jù)所述增加副本的消息,從所述源服務(wù)器的地址對(duì)應(yīng)的源服務(wù)器獲取與所述節(jié)目的名稱對(duì)應(yīng)的節(jié)目數(shù)據(jù),并將所述節(jié)目數(shù)據(jù)作為副本進(jìn)行保存。本發(fā)明實(shí)施例還提供一種節(jié)目的處理方法,包括接收跟蹤服務(wù)器發(fā)送的副本處理消息,所述副本處理消息包括哈希值和節(jié)目的名稱;判斷所述哈希值是否在自身維護(hù)的哈希值的范圍內(nèi),若在,則對(duì)所述節(jié)目的名稱對(duì)應(yīng)的副本進(jìn)行相應(yīng)的處理。本發(fā)明實(shí)施例提供一種跟蹤服務(wù)器,包括節(jié)目目錄存儲(chǔ)模塊,用于存儲(chǔ)節(jié)目目錄;副本的理論數(shù)量獲取模塊,用于每隔預(yù)定時(shí)間,根據(jù)預(yù)先存儲(chǔ)的節(jié)目目錄中節(jié)目的名稱對(duì)應(yīng)的訪問數(shù)量,獲取所述節(jié)目的名稱對(duì)應(yīng)的在分布式哈希表網(wǎng)絡(luò)中緩存的副本的理論數(shù)量;第一判斷模塊,用于判斷所述節(jié)目的名稱對(duì)應(yīng)的在分布式哈希表網(wǎng)絡(luò)中緩存的副本的理論數(shù)量大于還是小于所述節(jié)目的名稱對(duì)應(yīng)的在所述分布式哈希表網(wǎng)絡(luò)中緩存的副本的實(shí)際數(shù)量;哈希值獲取模塊,用于若所述第一判斷模塊判斷出大于,則根據(jù)哈希算法,分別將所述節(jié)目的名稱和新增的副本的編號(hào)進(jìn)行哈希計(jì)算,獲取每個(gè)所述新增的副本的編號(hào)對(duì)應(yīng)的哈希值;第一發(fā)送模塊,用于將所述節(jié)目的名稱、所述節(jié)目的名稱對(duì)應(yīng)的每個(gè)所述新增的副本的編號(hào)對(duì)應(yīng)的哈希值和所述節(jié)目的名稱對(duì)應(yīng)的源服務(wù)器的地址攜帶在增加副本的消息中發(fā)送給所述分布式哈希表網(wǎng)絡(luò)中與所述哈希值對(duì)應(yīng)的緩存服務(wù)器中,以供所述緩存服務(wù)器根據(jù)所述增加副本的消息,從所述源服務(wù)器的地址對(duì)應(yīng)的源服務(wù)器獲取與所述節(jié)目的名稱對(duì)應(yīng)的節(jié)目數(shù)據(jù),并將所述節(jié)目數(shù)據(jù)作為副本進(jìn)行保存。第一發(fā)送模塊,用于根據(jù)判斷結(jié)果,在所述節(jié)目目錄中獲取與所述節(jié)目的名稱對(duì)應(yīng)的信息,并將所述信息發(fā)送給所述客戶端服務(wù)器,以供所述客戶端服務(wù)器根據(jù)所述信息,獲取所述節(jié)目的名稱對(duì)應(yīng)的節(jié)目數(shù)據(jù)。本發(fā)明實(shí)施例提供一種緩存服務(wù)器,包括第二接收模塊,用于接收所述跟蹤服務(wù)器發(fā)送的副本處理消息,所述副本處理消息包括哈希值和節(jié)目的名稱;第三判斷模塊,用于判斷所述哈希值是否在自身維護(hù)的哈希值的范圍內(nèi);第二節(jié)目數(shù)據(jù)獲取模塊,用于若所述第三判斷模塊判斷出在,則對(duì)所述節(jié)目的名稱對(duì)應(yīng)的副本進(jìn)行相應(yīng)的處理。本發(fā)明實(shí)施例提供一種節(jié)目的處理系統(tǒng),包括源服務(wù)器、客戶端服務(wù)器、上述所述的跟蹤服務(wù)器和上述所述的緩存服務(wù)器。本發(fā)明實(shí)施例的節(jié)目的處理方法和系統(tǒng)以及裝置,通過(guò)每隔預(yù)定時(shí)間,根據(jù)預(yù)先存儲(chǔ)的節(jié)目目錄中節(jié)目的名稱對(duì)應(yīng)的訪問數(shù)量,獲取該節(jié)目的名稱對(duì)應(yīng)的在分布式哈希表網(wǎng)絡(luò)中緩存的副本的理論數(shù)量,并判斷該節(jié)目的名稱對(duì)應(yīng)的在分布式哈希表網(wǎng)絡(luò)中緩存的副本的理論數(shù)量大于還是小于該節(jié)目的名稱對(duì)應(yīng)的在該分布式哈希表網(wǎng)絡(luò)中緩存的副本的實(shí)際數(shù)量,若大于,則根據(jù)哈希算法,分別將節(jié)目的名稱和新增的副本的編號(hào)進(jìn)行哈希計(jì)算,獲取每個(gè)新增的副本的編號(hào)對(duì)應(yīng)的哈希值,最后將該節(jié)目的名稱以及其對(duì)應(yīng)的新增的副本的編號(hào)對(duì)應(yīng)的哈希值和源服務(wù)器的地址攜帶在增加副本的消息中,發(fā)送給與該哈希值對(duì)應(yīng)的緩存服務(wù)器中,以供緩存服務(wù)器根據(jù)該增加副本的消息,獲取與該節(jié)目的名稱對(duì)應(yīng)的節(jié)目數(shù)據(jù),并將該節(jié)目數(shù)據(jù)作為副本進(jìn)行保存,從而實(shí)現(xiàn)了對(duì)重尾節(jié)目的優(yōu)化,并有效地緩解了重尾節(jié)目集整體帶來(lái)的大量流量對(duì)源服務(wù)器產(chǎn)生的巨大壓力。
為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作一簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖是本發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。圖1為本發(fā)明實(shí)施例一提供的節(jié)目的處理方法流程圖;圖2為本發(fā)明實(shí)施例二提供的節(jié)目的處理方法的流程圖;圖3為本發(fā)明實(shí)施例三提供的節(jié)目的處理方法的流程圖;圖4為本發(fā)明實(shí)施例四提供的節(jié)目的處理方法的流程圖;圖5為本發(fā)明實(shí)施例五提供的節(jié)目的處理方法的流程圖;圖6為本發(fā)明實(shí)施例六提供的節(jié)目的處理方法的流程圖;圖7為本發(fā)明實(shí)施例七提供的跟蹤服務(wù)器的結(jié)構(gòu)示意圖;圖8為本發(fā)明實(shí)施例八提供的跟蹤服務(wù)器的結(jié)構(gòu)示意圖;圖9為本發(fā)明實(shí)施例九提供的客戶端服務(wù)器的結(jié)構(gòu)示意圖;圖10為本發(fā)明實(shí)施例九提供的客戶端服務(wù)器中第一節(jié)目數(shù)據(jù)獲取模塊22的一個(gè)結(jié)構(gòu)示意圖;圖11為本發(fā)明實(shí)施例九提供的客戶端服務(wù)器中第一節(jié)目數(shù)據(jù)獲取模塊22的另一個(gè)結(jié)構(gòu)示意圖;圖12為本發(fā)明實(shí)施例十提供的緩存服務(wù)器的結(jié)構(gòu)示意圖;圖13為本發(fā)明實(shí)施例十一提供的節(jié)目的處理系統(tǒng)的結(jié)構(gòu)示意圖。
具體實(shí)施例方式為使本發(fā)明實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。圖1為本發(fā)明實(shí)施例一提供的節(jié)目的處理方法流程圖,如圖1所示,本實(shí)施例的執(zhí)行主體為跟蹤服務(wù)器,則該方法包括步驟101、每隔預(yù)定時(shí)間,根據(jù)預(yù)先存儲(chǔ)的節(jié)目目錄中節(jié)目的名稱對(duì)應(yīng)的訪問數(shù)量,獲取節(jié)目的名稱對(duì)應(yīng)的在分布式哈希表(Distributed Hash Table ;簡(jiǎn)稱DHT)網(wǎng)絡(luò)中緩存的副本的理論數(shù)量。具體的,在本實(shí)施例中,該節(jié)目和副本均可以表示為重尾節(jié)目。該節(jié)目目錄中可以包括節(jié)目的名稱、該節(jié)目的名稱對(duì)應(yīng)的源服務(wù)器的地址、該節(jié)目的名稱對(duì)應(yīng)的節(jié)目數(shù)據(jù)在 DHT網(wǎng)絡(luò)中緩存的副本的實(shí)際數(shù)量和該節(jié)目的名稱對(duì)應(yīng)的關(guān)鍵字列表。其中,該關(guān)鍵字列表包括該節(jié)目的名稱對(duì)應(yīng)的各個(gè)副本所對(duì)應(yīng)的哈希值,需要說(shuō)明的是,每個(gè)副本對(duì)應(yīng)的哈希值是唯一的,且該哈希值可以根據(jù)哈希算法(例如SHA1算法或者M(jìn)D5算法),對(duì)節(jié)目的名稱和副本的編號(hào)進(jìn)行計(jì)算獲取的。值得注意的是,在本發(fā)明的各個(gè)實(shí)施例中,存儲(chǔ)在源服務(wù)器中的節(jié)目的名稱對(duì)應(yīng)的節(jié)目數(shù)據(jù)可以稱之為節(jié)目數(shù)據(jù),存儲(chǔ)在緩存服務(wù)器中該節(jié)目的名稱對(duì)應(yīng)的節(jié)目數(shù)據(jù)可以稱之為副本。步驟102、判斷該節(jié)目的名稱對(duì)應(yīng)的在DHT網(wǎng)絡(luò)中緩存的副本的理論數(shù)量大于還是小于該節(jié)目的名稱對(duì)應(yīng)的在DHT網(wǎng)絡(luò)中緩存的副本的實(shí)際數(shù)量,若大于,則根據(jù)哈希算法,分別將節(jié)目的名稱和新增的副本的編號(hào)進(jìn)行哈希計(jì)算,獲取每個(gè)新增的副本的編號(hào)對(duì)應(yīng)的哈希值。步驟103、將節(jié)目的名稱、節(jié)目的名稱對(duì)應(yīng)的每個(gè)新增的副本的編號(hào)對(duì)應(yīng)的哈希值和該節(jié)目的名稱對(duì)應(yīng)的源服務(wù)器的地址攜帶在增加副本的消息中發(fā)送給DHT網(wǎng)絡(luò)中與該哈希值對(duì)應(yīng)的緩存服務(wù)器中,以供該緩存服務(wù)器根據(jù)增加副本的消息,從源服務(wù)器的地址對(duì)應(yīng)的源服務(wù)器中獲取與該節(jié)目的名稱對(duì)應(yīng)的節(jié)目數(shù)據(jù),并將該節(jié)目數(shù)據(jù)作為副本進(jìn)行保存。在本實(shí)施例中,通過(guò)每隔預(yù)定時(shí)間,根據(jù)預(yù)先存儲(chǔ)的節(jié)目目錄中節(jié)目的名稱對(duì)應(yīng)的訪問數(shù)量,獲取該節(jié)目的名稱對(duì)應(yīng)的在分布式哈希表網(wǎng)絡(luò)中緩存的副本的理論數(shù)量,并判斷該節(jié)目的名稱對(duì)應(yīng)的在DHT網(wǎng)絡(luò)中緩存的副本的理論數(shù)量大于還是小于該節(jié)目的名稱對(duì)應(yīng)的在該DHT網(wǎng)絡(luò)中緩存的副本的實(shí)際數(shù)量,若大于,則根據(jù)哈希算法,分別將節(jié)目的名稱和新增的副本的編號(hào)進(jìn)行哈希計(jì)算,獲取每個(gè)新增的副本的編號(hào)對(duì)應(yīng)的哈希值,最后將該節(jié)目的名稱以及其對(duì)應(yīng)的新增的副本的編號(hào)對(duì)應(yīng)的哈希值和源服務(wù)器的地址攜帶在增加副本的消息中,發(fā)送給與該哈希值對(duì)應(yīng)的緩存服務(wù)器中,以供緩存服務(wù)器根據(jù)該增加副本的消息,獲取與該節(jié)目的名稱對(duì)應(yīng)的節(jié)目數(shù)據(jù),并將該節(jié)目數(shù)據(jù)作為副本進(jìn)行保存,從而實(shí)現(xiàn)了對(duì)重尾節(jié)目的優(yōu)化,并有效地緩解了重尾節(jié)目集整體帶來(lái)的大量流量對(duì)源服務(wù)器產(chǎn)生的巨大壓力。圖2為本發(fā)明實(shí)施例二提供的節(jié)目的處理方法的流程圖,如圖2所示,本實(shí)施例的執(zhí)行主體為跟蹤服務(wù)器,則本方法具體包括步驟201、接收客戶端服務(wù)器發(fā)送的獲取節(jié)目的請(qǐng)求,該獲取節(jié)目的請(qǐng)求包括節(jié)目的名稱。步驟202、若該節(jié)目的名稱記錄在預(yù)先存儲(chǔ)的節(jié)目目錄中,判斷在該節(jié)目目錄中, 該節(jié)目的名稱對(duì)應(yīng)的節(jié)目數(shù)據(jù)在DHT網(wǎng)絡(luò)中的緩存的副本的實(shí)際數(shù)量是否為零;若不為零,執(zhí)行步驟203 ;若為零,執(zhí)行步驟204。步驟203、在節(jié)目目錄中,獲取與節(jié)目的名稱對(duì)應(yīng)的關(guān)鍵字列表,并將該關(guān)鍵字列表發(fā)送給客戶端服務(wù)器,以供客戶端服務(wù)器根據(jù)該關(guān)鍵字列表,獲取與節(jié)目的名稱對(duì)應(yīng)的副本,結(jié)束。具體的,該關(guān)鍵字列表中包括副本的編號(hào)對(duì)應(yīng)的哈希值,且該哈希值由節(jié)目的名稱和副本的編號(hào)根據(jù)哈希算法計(jì)算得出。在本實(shí)施例中,客戶端服務(wù)器接收到該關(guān)鍵字列表后,如果該關(guān)鍵字列表中只包括一個(gè)哈希值,則客戶端服務(wù)器可以將獲取節(jié)目的請(qǐng)求發(fā)送給該哈希值對(duì)應(yīng)的緩存服務(wù)器中,由該緩存服務(wù)器從保存的副本中,獲取與獲取節(jié)目的請(qǐng)求中的節(jié)目的名稱對(duì)應(yīng)的副本, 并將該副本返回給該客戶端服務(wù)器。如果該關(guān)鍵字列表中包括多個(gè)哈希值,則客戶端服務(wù)器可以先發(fā)送響應(yīng)請(qǐng)求給各個(gè)哈希值對(duì)應(yīng)的緩存服務(wù)器,并將第一個(gè)返回響應(yīng)的緩存服務(wù)器作為目標(biāo)緩存服務(wù)器,發(fā)送獲取節(jié)目的請(qǐng)求給該目標(biāo)緩存服務(wù)器,由該目標(biāo)緩存服務(wù)器從保存的副本中,獲取與該獲取節(jié)目的請(qǐng)求中的節(jié)目的名稱對(duì)應(yīng)的副本,并將該副本返回給該客戶端服務(wù)器。需要說(shuō)明的是,緩存服務(wù)器中存儲(chǔ)的節(jié)目的名稱對(duì)應(yīng)的副本即為源服務(wù)器中該節(jié)目的名稱對(duì)應(yīng)的節(jié)目數(shù)據(jù)。步驟204、在節(jié)目目錄中,獲取與該節(jié)目的名稱對(duì)應(yīng)的源服務(wù)器的地址,并將該源服務(wù)器的地址發(fā)送給客戶端服務(wù)器,以供該客戶端服務(wù)器根據(jù)該源服務(wù)器的地址,獲取與該節(jié)目的名稱對(duì)應(yīng)的節(jié)目數(shù)據(jù)。在本實(shí)施例中,當(dāng)節(jié)目的名稱對(duì)應(yīng)的節(jié)目數(shù)據(jù)在DHT網(wǎng)絡(luò)中緩存的副本的實(shí)際數(shù)量為零時(shí),說(shuō)明在DHT網(wǎng)絡(luò)中的緩存服務(wù)器中沒有存儲(chǔ)該節(jié)目的名稱對(duì)應(yīng)的副本,則客戶端服務(wù)器需要從源服務(wù)器中獲取該節(jié)目的名稱對(duì)應(yīng)的節(jié)目數(shù)據(jù),因此,跟蹤服務(wù)器將節(jié)目的名稱對(duì)應(yīng)的源服務(wù)器的地址發(fā)送給客戶端服務(wù)器,再由客戶端服務(wù)器發(fā)送獲取節(jié)目的請(qǐng)求給源服務(wù)器的地址對(duì)應(yīng)的源服務(wù)器,以供源服務(wù)器根據(jù)獲取該獲取節(jié)目的請(qǐng)求中的節(jié)目的名稱對(duì)應(yīng)的節(jié)目數(shù)據(jù),并將該節(jié)目數(shù)據(jù)返回給客戶端服務(wù)器。在本實(shí)施例中,通過(guò)接收客戶端服務(wù)器發(fā)送的獲取節(jié)目的請(qǐng)求,若該獲取節(jié)目的請(qǐng)求中的節(jié)目的名稱記錄在預(yù)先存儲(chǔ)的節(jié)目目錄中,則判斷在該節(jié)目目錄中,節(jié)目的名稱對(duì)應(yīng)的節(jié)目數(shù)據(jù)在DHT網(wǎng)絡(luò)中的緩存的副本的實(shí)際數(shù)量是否為零,若不為零,則在節(jié)目目錄中獲取與該節(jié)目的名稱對(duì)應(yīng)的節(jié)目數(shù)據(jù)在DHT玩了過(guò)中緩存的副本對(duì)應(yīng)的關(guān)鍵字列表; 若為零,則在節(jié)目目錄中獲取該節(jié)目的名稱對(duì)應(yīng)的源服務(wù)器地址,然后將該關(guān)鍵字列表或者源服務(wù)器的地址發(fā)送給客戶端,以供客戶端服務(wù)器根據(jù)該關(guān)鍵字列表或者源服務(wù)器的地址,獲取該節(jié)目的名稱對(duì)應(yīng)的節(jié)目數(shù)據(jù)或者副本,從而實(shí)現(xiàn)了對(duì)重尾節(jié)目的優(yōu)化,并有效地緩解了重尾節(jié)目集整體帶來(lái)的大量流量對(duì)源服務(wù)器產(chǎn)生的巨大壓力。圖3為本發(fā)明實(shí)施例三提供的節(jié)目的處理方法的流程圖,如圖3所示,在上述實(shí)施例二的基礎(chǔ)上,在201之后還可以包括步驟300、將節(jié)目目錄中的節(jié)目的名稱對(duì)應(yīng)的訪問數(shù)量加1,作為更新后的訪問數(shù)量。步驟301、每隔預(yù)定時(shí)間,根據(jù)節(jié)目目錄中節(jié)目的名稱對(duì)應(yīng)的訪問數(shù)量,計(jì)算節(jié)目的名稱對(duì)應(yīng)的排列位置。步驟302、根據(jù)節(jié)目的名稱對(duì)應(yīng)的排列位置,分別獲取節(jié)目的名稱對(duì)應(yīng)的在DHT網(wǎng)絡(luò)中緩存的副本的理論數(shù)量。步驟303、在該節(jié)目目錄中,將節(jié)目的名稱對(duì)應(yīng)的在DHT網(wǎng)絡(luò)中緩存的副本的理論數(shù)量作為更新后的節(jié)目的名稱對(duì)應(yīng)的在DHT網(wǎng)絡(luò)中緩存的副本的實(shí)際數(shù)量。步驟304、判斷節(jié)目的名稱對(duì)應(yīng)的在DHT網(wǎng)絡(luò)中緩存的副本的理論數(shù)量大于還是小于該節(jié)目的名稱對(duì)應(yīng)的在DHT網(wǎng)絡(luò)中緩存的副本的實(shí)際數(shù)量,若大于,執(zhí)行步驟305 ;若小于,執(zhí)行步驟308。步驟305、根據(jù)哈希算法,對(duì)節(jié)目的名稱和新增的副本的編號(hào)進(jìn)行哈希計(jì)算,獲取該節(jié)目的名稱對(duì)應(yīng)的每個(gè)新增的副本的編號(hào)對(duì)應(yīng)的哈希值。步驟306、將該哈希值存儲(chǔ)在該節(jié)目目錄中與該節(jié)目的名稱對(duì)應(yīng)的關(guān)鍵字列表中。步驟307、將節(jié)目的名稱、該節(jié)目的名稱對(duì)應(yīng)的新增的副本的編號(hào)對(duì)應(yīng)的哈希值和源服務(wù)器的地址攜帶在增加副本的消息中,發(fā)送給哈希值對(duì)應(yīng)的DHT網(wǎng)絡(luò)中的緩存服務(wù)器中,以供緩存服務(wù)器根據(jù)接收到的增加副本的消息,從源服務(wù)器的地址對(duì)應(yīng)的源服務(wù)器中獲取該節(jié)目的名稱對(duì)應(yīng)的副本。結(jié)束。
在本實(shí)施例中,跟蹤服務(wù)器可以每隔預(yù)定時(shí)間內(nèi),獲取節(jié)目目錄中存儲(chǔ)的節(jié)目的名稱對(duì)應(yīng)的訪問數(shù)量,并根據(jù)各個(gè)節(jié)目的名稱對(duì)應(yīng)的訪問數(shù)量,獲取各自的排列位置,并根據(jù)排列位置,獲取各個(gè)節(jié)目的名稱對(duì)應(yīng)的在DHT網(wǎng)絡(luò)中緩存的副本的理論數(shù)量。舉例來(lái)說(shuō), 在一個(gè)預(yù)定時(shí)間時(shí),在節(jié)目目錄中“阿凡達(dá)”這一節(jié)目的名稱對(duì)應(yīng)的訪問數(shù)量對(duì)應(yīng)的排列位置為前20 %,根據(jù)預(yù)先存儲(chǔ)的排列位置和理論數(shù)量的對(duì)應(yīng)關(guān)系表,獲取該排列位置對(duì)應(yīng)的在DHT網(wǎng)絡(luò)中緩存的副本的理論數(shù)量為2,而實(shí)際中,該“阿凡達(dá)”這一節(jié)目的名稱對(duì)應(yīng)的在 DHT網(wǎng)絡(luò)中緩存的副本的實(shí)際數(shù)量為0,則需要在緩存服務(wù)器中增加兩個(gè)副本,其具體的實(shí)現(xiàn)方式可以為跟蹤服務(wù)器將“阿凡達(dá)”和一個(gè)副本的編號(hào)“編號(hào)1”組成一個(gè)字符串,并根據(jù)哈希算法,計(jì)算該字符串,獲取該“編號(hào)1”對(duì)應(yīng)的哈希值;并將“阿凡達(dá)”和另一個(gè)副本的編號(hào)“編號(hào)2”組成一個(gè)字符串,并根據(jù)哈希算法,計(jì)算該字符串,獲取該“編號(hào)2”對(duì)應(yīng)的哈希值;然后將各個(gè)副本的編號(hào)對(duì)應(yīng)的哈希值,“阿凡達(dá)”以及源服務(wù)器的地址攜帶在增加副本的消息中,發(fā)送給各個(gè)哈希值對(duì)應(yīng)的緩存服務(wù)器中,以供緩存服務(wù)器根據(jù)接收到的增加副本的消息,從源服務(wù)器的地址對(duì)應(yīng)的源服務(wù)器中獲取該“阿凡達(dá)”對(duì)應(yīng)的節(jié)目數(shù)據(jù),并將該節(jié)目數(shù)據(jù)作為副本進(jìn)行保存。步驟308、將刪除的副本的編號(hào)對(duì)應(yīng)的哈希值和節(jié)目的名稱攜帶在刪除副本的消息中,發(fā)送給該哈希值對(duì)應(yīng)的緩存服務(wù)器中,以供緩存服務(wù)器根據(jù)接收到的刪除副本的消息,將節(jié)目的名稱對(duì)應(yīng)的副本刪除。步驟309、刪除節(jié)目目錄中該節(jié)目的名稱對(duì)應(yīng)的關(guān)鍵字列表中與該刪除的副本編號(hào)對(duì)應(yīng)的哈希值。舉例來(lái)說(shuō),在一個(gè)預(yù)定時(shí)間時(shí),在節(jié)目目錄中“阿凡達(dá)”這一節(jié)目的名稱對(duì)應(yīng)的訪問數(shù)量對(duì)應(yīng)的排列位置為后20%,根據(jù)預(yù)先存儲(chǔ)的排列位置和理論數(shù)量的對(duì)應(yīng)關(guān)系表,獲取該排列位置對(duì)應(yīng)的在DHT網(wǎng)絡(luò)中緩存的副本的理論數(shù)量為1,而實(shí)際中,該“阿凡達(dá)”這一節(jié)目的名稱對(duì)應(yīng)的在DHT網(wǎng)絡(luò)中緩存的副本的實(shí)際數(shù)量為2,則需要在緩存服務(wù)器中刪除一個(gè)副本,其具體的實(shí)現(xiàn)方式可以為跟蹤服務(wù)器將“阿凡達(dá)”對(duì)應(yīng)的一個(gè)副本的編號(hào)“編號(hào) 1”所對(duì)應(yīng)的關(guān)鍵字和“阿凡達(dá)”攜帶在刪除副本的消息中,發(fā)送給該哈希值對(duì)應(yīng)的緩存服務(wù)器中,以供該緩存服務(wù)器根據(jù)接收到的該刪除副本的消息,將該“阿凡達(dá)”對(duì)應(yīng)的副本刪除, 同時(shí),刪除節(jié)目目錄中該“阿凡達(dá)”對(duì)應(yīng)的關(guān)鍵字列表中該“編號(hào)1”所對(duì)應(yīng)的哈希值。在本實(shí)施例中,通過(guò)當(dāng)接收到客戶端服務(wù)器發(fā)送的獲取節(jié)目的請(qǐng)求時(shí),將節(jié)目目錄中的該獲取節(jié)目的請(qǐng)求中的節(jié)目的名稱對(duì)應(yīng)的訪問數(shù)量加1,作為更新后的訪問數(shù)量,并通過(guò)每隔預(yù)定時(shí)間,獲取節(jié)目目錄中的各個(gè)節(jié)目的名稱對(duì)應(yīng)的訪問數(shù)量,并根據(jù)該訪問數(shù)量,獲取與之對(duì)應(yīng)的節(jié)目的名稱對(duì)應(yīng)排列位置,以及該排列位置對(duì)應(yīng)的節(jié)目的名稱對(duì)應(yīng)的在DHT網(wǎng)絡(luò)中緩存的副本的理論數(shù)量,從而在實(shí)際數(shù)量小于理論數(shù)量時(shí),觸發(fā)緩存服務(wù)器中增加該節(jié)目的名稱對(duì)應(yīng)的副本;或者,在實(shí)際數(shù)量大于理論數(shù)量時(shí),觸發(fā)緩存服務(wù)器中減少該節(jié)目的名稱對(duì)應(yīng)的副本,從而使得重尾節(jié)目也有相對(duì)的冷熱之分,并在散列后每個(gè)緩存服務(wù)器中保存的重尾節(jié)目對(duì)應(yīng)的副本的數(shù)量和訪問量在概率上都均勻,進(jìn)而有效地均衡了 DHT網(wǎng)絡(luò)中各個(gè)緩存服務(wù)器的負(fù)載。圖4為本發(fā)明實(shí)施例四提供的節(jié)目的處理方法的流程圖,如圖4所示,本實(shí)施例的執(zhí)行主體為客戶端服務(wù)器,則該方法包括步驟401、發(fā)送獲取節(jié)目的請(qǐng)求給跟蹤服務(wù)器,該獲取節(jié)目的請(qǐng)求包括節(jié)目的名稱。
步驟402、接收跟蹤服務(wù)器返回的信息,并根據(jù)該信息獲取該節(jié)目的名稱對(duì)應(yīng)的節(jié)目數(shù)據(jù)或者副本。具體的,該跟蹤服務(wù)器可以執(zhí)行實(shí)施例一至實(shí)施例三任一實(shí)施所述的方法的技術(shù)方案,其原理相類似,此處不再贅述。另外,該信息可以為節(jié)目的名稱對(duì)應(yīng)的節(jié)目數(shù)據(jù)在DHT 網(wǎng)絡(luò)中緩存的關(guān)鍵字列表,或者可以為源服務(wù)器的地址。舉例來(lái)說(shuō),當(dāng)信息為節(jié)目的名稱對(duì)應(yīng)的節(jié)目數(shù)據(jù)在DHT網(wǎng)絡(luò)中緩存的關(guān)鍵字列表時(shí),步驟402的具體實(shí)現(xiàn)方式為接收跟蹤服務(wù)器返回的關(guān)鍵字列表;向關(guān)鍵字列表中該哈希值對(duì)應(yīng)的緩存服務(wù)器發(fā)送響應(yīng)請(qǐng)求,并將第一個(gè)返回響應(yīng)的緩存服務(wù)器作為目標(biāo)緩存服務(wù)器;發(fā)送獲取節(jié)目的請(qǐng)求該目標(biāo)緩存服務(wù)器,并接收目標(biāo)緩存服務(wù)器返回的節(jié)目的名稱對(duì)應(yīng)的副本。需要說(shuō)明的是,當(dāng)關(guān)鍵字列表中只存儲(chǔ)了一個(gè)哈希值,則客戶端服務(wù)器可以直接向該哈希值對(duì)應(yīng)的緩存服務(wù)器中發(fā)送獲取節(jié)目的請(qǐng)求,并接收該緩存服務(wù)器返回的節(jié)目的名稱對(duì)應(yīng)的副本。當(dāng)信息為源服務(wù)器的地址時(shí),則步驟402的具體實(shí)現(xiàn)方式可以為接收跟蹤服務(wù)器返回的源服務(wù)器的地址;發(fā)送獲取節(jié)目的請(qǐng)求給源服務(wù)器的地址對(duì)應(yīng)的源服務(wù)器,并接收源服務(wù)器返回的節(jié)目的名稱對(duì)應(yīng)的節(jié)目數(shù)據(jù)。在本實(shí)施例中,通過(guò)發(fā)送獲取節(jié)目的請(qǐng)求給跟蹤服務(wù)器,當(dāng)跟蹤服務(wù)器返回的信息為關(guān)鍵字列表時(shí),則可以從緩存服務(wù)器中獲取該獲取節(jié)目的請(qǐng)求中節(jié)目的名稱對(duì)應(yīng)的副本;當(dāng)跟蹤服務(wù)器返回的信息為源服務(wù)器的地址時(shí),則可以從源服務(wù)器的地址對(duì)應(yīng)的源服務(wù)器中獲取節(jié)目的名稱對(duì)應(yīng)的節(jié)目數(shù)據(jù),從而有效地緩解了重尾節(jié)目集整體帶來(lái)的大量流量對(duì)源服務(wù)器產(chǎn)生的巨大壓力。圖5為本發(fā)明實(shí)施例五提供的節(jié)目的處理方法的流程圖,如圖5所示,本實(shí)施例的執(zhí)行主體為緩存服務(wù)器,則該方法包括步驟501、接收跟蹤服務(wù)器發(fā)送的副本處理消息,該副本處理消息包括哈希值和節(jié)目的名稱。步驟502、判斷該哈希值是否在自身維護(hù)的哈希值的范圍內(nèi),若在,則對(duì)該節(jié)目的名稱對(duì)應(yīng)的副本進(jìn)行相應(yīng)的處理。在本實(shí)例中,該跟蹤服務(wù)器可以執(zhí)行實(shí)施例一至實(shí)施例三任一實(shí)施所述的方法的技術(shù)方案,其原理相類似,此處不再贅述。在本實(shí)施例中,通過(guò)接收跟蹤服務(wù)器發(fā)送的副本處理消息,判斷該副本處理消息中該哈希值是否在自身維護(hù)的關(guān)鍵字的范圍內(nèi),若在,則對(duì)該副本處理消息中該節(jié)目的名稱對(duì)應(yīng)的副本進(jìn)行相應(yīng)的處理,從而使得重尾節(jié)目也有相對(duì)的冷熱之分,進(jìn)而有效地均衡了 DHT網(wǎng)絡(luò)中各個(gè)緩存服務(wù)器的負(fù)載。圖6為本發(fā)明實(shí)施例六提供的節(jié)目的處理方法的流程圖,如圖6所示,本實(shí)施例的執(zhí)行主體為緩存服務(wù)器,則該方法具體包括如下步驟步驟601、接收跟蹤服務(wù)器發(fā)送的副本處理消息。
步驟602、判斷副本處理消息中的哈希值是否在自身的哈希值的范圍內(nèi),若在,則執(zhí)行步驟603 ;若不在,則執(zhí)行步驟607。步驟603、判斷該副本處理消息是新增副本的消息還是刪除副本的消息,若是新增副本的消息,則執(zhí)行步驟604 ;若是刪除副本的消息,則執(zhí)行步驟606。步驟604、從與該新增副本的消息中的源服務(wù)器地址對(duì)應(yīng)的源服務(wù)器中,獲取與新增的節(jié)目的消息中的節(jié)目的名稱對(duì)應(yīng)的節(jié)目數(shù)據(jù)。步驟605、將節(jié)目數(shù)據(jù)作為副本,并保存該副本,結(jié)束。步驟606、刪除與刪除副本的消息中的節(jié)目的名稱對(duì)應(yīng)的副本,結(jié)束。步驟607、根據(jù)DHT網(wǎng)絡(luò)中的路由轉(zhuǎn)發(fā)表,獲取與該哈希值對(duì)應(yīng)的緩存服務(wù)器,并將該副本處理消息轉(zhuǎn)發(fā)給哈希值對(duì)應(yīng)的緩存服務(wù)器中。具體的,當(dāng)將副本處理消息轉(zhuǎn)發(fā)給關(guān)鍵字對(duì)應(yīng)的緩存服務(wù)器中,該緩存服務(wù)器可以執(zhí)行步驟601至步驟606。在本實(shí)施例中,通過(guò)接收跟蹤服務(wù)器發(fā)送的副本處理消息,判斷該副本處理消息中該哈希值是否在自身維護(hù)的哈希值的范圍內(nèi),若在,則對(duì)該副本處理消息中該節(jié)目的名稱對(duì)應(yīng)的節(jié)目數(shù)據(jù)刪除或者增加;若不在,則將副本處理消息轉(zhuǎn)發(fā)給副本處理消息中哈希值對(duì)應(yīng)的緩存服務(wù)器中進(jìn)行相應(yīng)的處理,從而使得重尾節(jié)目也有相對(duì)的冷熱之分,進(jìn)而有效地均衡了 DHT網(wǎng)絡(luò)中各個(gè)緩存服務(wù)器的負(fù)載。圖7為本發(fā)明實(shí)施例七提供的跟蹤服務(wù)器的結(jié)構(gòu)示意圖,如圖7所示,本實(shí)施例的跟蹤服務(wù)器包括節(jié)目目錄存儲(chǔ)模塊10、副本的理論數(shù)量獲取模塊11、第一判斷模塊12、哈希值獲取模塊13和第一發(fā)送模塊14。其中,節(jié)目目錄存儲(chǔ)模塊10,用于預(yù)先存儲(chǔ)節(jié)目目錄; 副本的理論數(shù)量獲取模塊11用于每隔預(yù)定時(shí)間,根據(jù)預(yù)先存儲(chǔ)的節(jié)目目錄中節(jié)目的名稱對(duì)應(yīng)的訪問數(shù)量,獲取所述節(jié)目的名稱對(duì)應(yīng)的在分布式哈希表網(wǎng)絡(luò)中緩存的副本的理論數(shù)量;第一判斷模塊12用于判斷所述節(jié)目的名稱對(duì)應(yīng)的在分布式哈希表網(wǎng)絡(luò)中緩存的副本的理論數(shù)量大于還是小于所述節(jié)目的名稱對(duì)應(yīng)的在所述分布式哈希表網(wǎng)絡(luò)中緩存的副本的實(shí)際數(shù)量;哈希值獲取模塊13用于若所述第一判斷模塊判斷出大于,則根據(jù)哈希算法, 分別將所述節(jié)目的名稱和新增的副本的編號(hào)進(jìn)行哈希計(jì)算,獲取每個(gè)所述新增的副本的編號(hào)對(duì)應(yīng)的哈希值;第一發(fā)送模塊14用于將所述節(jié)目的名稱、所述節(jié)目的名稱對(duì)應(yīng)的每個(gè)所述新增的副本的編號(hào)對(duì)應(yīng)的哈希值和所述節(jié)目的名稱對(duì)應(yīng)的源服務(wù)器的地址攜帶在增加副本的消息中發(fā)送給所述分布式哈希表網(wǎng)絡(luò)中與所述哈希值對(duì)應(yīng)的緩存服務(wù)器中,以供所述緩存服務(wù)器根據(jù)所述增加副本的消息,從所述源服務(wù)器的地址對(duì)應(yīng)的源服務(wù)器獲取與所述節(jié)目的名稱對(duì)應(yīng)的節(jié)目數(shù)據(jù),并將所述節(jié)目數(shù)據(jù)作為副本進(jìn)行保存。本實(shí)施例的跟蹤服務(wù)器可以執(zhí)行實(shí)施例一所示方法實(shí)施例的技術(shù)方案,其實(shí)現(xiàn)原理相類似,此處不再贅述。在本實(shí)施例中,通過(guò)接收客戶端服務(wù)器發(fā)送的獲取節(jié)目的請(qǐng)求,若該獲取節(jié)目的請(qǐng)求中的節(jié)目的名稱記錄在預(yù)先存儲(chǔ)的節(jié)目目錄中,則判斷在該節(jié)目目錄中,節(jié)目的名稱對(duì)應(yīng)的節(jié)目數(shù)據(jù)在DHT網(wǎng)絡(luò)中的緩存的副本的實(shí)際數(shù)量是否為零,若不為零,則在節(jié)目目錄中獲取與該節(jié)目的名稱對(duì)應(yīng)的節(jié)目數(shù)據(jù)在DHT中緩存的副本對(duì)應(yīng)的關(guān)鍵字列表;若為零,則在節(jié)目目錄中獲取該節(jié)目的名稱對(duì)應(yīng)的源服務(wù)器地址,然后將該關(guān)鍵字列表或者源服務(wù)器的地址發(fā)送給客戶端,以供客戶端服務(wù)器根據(jù)該關(guān)鍵字列表或者源服務(wù)器的地址,獲取該節(jié)目的名稱對(duì)應(yīng)的節(jié)目數(shù)據(jù)或者副本,從而實(shí)現(xiàn)了對(duì)重尾節(jié)目的優(yōu)化,并有效地緩解了重尾節(jié)目集整體帶來(lái)的大量流量對(duì)源服務(wù)器產(chǎn)生的巨大壓力。圖8為本發(fā)明實(shí)施例八提供的跟蹤服務(wù)器的結(jié)構(gòu)示意圖,如圖8所示,在上述實(shí)施例七的基礎(chǔ)上,當(dāng)?shù)谝慌袛嗄K12判斷出小于時(shí),該第一發(fā)送模塊14還用于將刪除的副本的編號(hào)對(duì)應(yīng)的哈希值和節(jié)目的名稱攜帶在刪除副本的消息中,發(fā)送給刪除的副本的編號(hào)對(duì)應(yīng)的哈希值對(duì)應(yīng)的緩存服務(wù)器中,以供該緩存服務(wù)器根據(jù)接收到的刪除副本的消息,將該節(jié)目的名稱對(duì)應(yīng)的副本刪除;另外,該跟蹤服務(wù)器還可以包括刪除模塊15,用于刪除節(jié)目目錄中節(jié)目的名稱對(duì)應(yīng)的關(guān)鍵字列表中與該刪除的副本的編號(hào)對(duì)應(yīng)的哈希值。進(jìn)一步的,該跟蹤服務(wù)器還可以包括第一接收模塊16和第二判斷模塊17。其中,第一接收模塊16用于接收客戶端服務(wù)器發(fā)送的獲取節(jié)目的請(qǐng)求,該獲取節(jié)目的請(qǐng)求包括節(jié)目的名稱;第二判斷模塊17用于若該節(jié)目的名稱記錄在該節(jié)目目錄中,判斷在節(jié)目目錄中,該節(jié)目的名稱對(duì)應(yīng)在DHT網(wǎng)絡(luò)中的緩存的副本的實(shí)際數(shù)量是否為零;則第一發(fā)送模塊14還用于根據(jù)第二判斷模塊17的判斷結(jié)果,在節(jié)目目錄中獲取與該節(jié)目的名稱對(duì)應(yīng)的信息,并將該信息發(fā)送給該客戶端服務(wù)器,以供該客戶端服務(wù)器根據(jù)該信息,獲取節(jié)目的名稱對(duì)應(yīng)的節(jié)目數(shù)據(jù)或者副本。具體的,若第二判斷模塊17判斷的判斷結(jié)果為節(jié)目的名稱對(duì)應(yīng)的在DHT網(wǎng)絡(luò)中緩存的副本的實(shí)際數(shù)量不為零,則第一發(fā)送模塊14具體用于根據(jù)節(jié)目的名稱對(duì)應(yīng)的在DHT網(wǎng)絡(luò)中緩存的副本的實(shí)際數(shù)量不為零的判斷結(jié)果,在節(jié)目目錄中獲取與該節(jié)目的名稱對(duì)應(yīng)的關(guān)鍵字列表,并將該關(guān)鍵字列表發(fā)送給客戶端服務(wù)器,以供客戶端服務(wù)器根據(jù)所述關(guān)鍵字列表,獲取與節(jié)目的名稱對(duì)應(yīng)的副本;或者,若第二判斷模塊17判斷的判斷結(jié)果為節(jié)目的名稱對(duì)應(yīng)的在DHT網(wǎng)絡(luò)中緩存的副本的實(shí)際數(shù)量為零時(shí),則第一發(fā)送模塊14具體用于根據(jù)節(jié)目的名稱對(duì)應(yīng)的在DHT網(wǎng)絡(luò)中緩存的副本的實(shí)際數(shù)量為零的判斷結(jié)果,在節(jié)目目錄中獲取與該節(jié)目的名稱對(duì)應(yīng)的源服務(wù)器的地址,并將源服務(wù)器的地址發(fā)送給客戶端服務(wù)器,以供客戶端服務(wù)器根據(jù)該源服務(wù)器的地址,獲取與該節(jié)目的名稱對(duì)應(yīng)的節(jié)目數(shù)據(jù)。更進(jìn)一步的,本實(shí)施例的跟蹤服務(wù)器還包括更新模塊18在第一接收模塊16接收到獲取節(jié)目請(qǐng)求時(shí),則將節(jié)目目錄中與該獲取節(jié)目的請(qǐng)求中的節(jié)目的名稱對(duì)應(yīng)的訪問數(shù)量加1,作為更新后的訪問數(shù)量。值得注意的是,更新模塊18還可以用于將哈希值存儲(chǔ)在節(jié)目目錄中與該節(jié)目的名稱對(duì)應(yīng)的關(guān)鍵字列表中。更進(jìn)一步的,該副本的理論數(shù)量獲取模塊11還可以具體包括排列位置獲取單元 111和副本的理論數(shù)量獲取單元112,其中,排列位置獲取單元111用于每隔預(yù)定時(shí)間,根據(jù)節(jié)目目錄中節(jié)目的名稱對(duì)應(yīng)的訪問數(shù)量,計(jì)算節(jié)目的名稱對(duì)應(yīng)的排列位置;副本的理論數(shù)量獲取單元112用于根據(jù)節(jié)目的名稱對(duì)應(yīng)的排列位置,分別獲取節(jié)目的名稱對(duì)應(yīng)的在DHT 網(wǎng)絡(luò)中緩存的副本的理論數(shù)量。需要說(shuō)明的是,當(dāng)?shù)谝慌袛嗄K12判斷出節(jié)目的名稱對(duì)應(yīng)的在DHT網(wǎng)絡(luò)中緩存的副本的理論數(shù)量大于或者小于節(jié)目的名稱對(duì)應(yīng)的在DHT網(wǎng)絡(luò)中緩存的副本的實(shí)際數(shù)量時(shí), 則更新模塊18還可以用于在節(jié)目目錄中,將該節(jié)目的名稱對(duì)應(yīng)的在DHT網(wǎng)絡(luò)中緩存的副本的理論數(shù)量作為更新后的該節(jié)目的名稱對(duì)應(yīng)的在DHT網(wǎng)絡(luò)中緩存的副本的實(shí)際數(shù)量。
本實(shí)施例的跟蹤服務(wù)器可以執(zhí)行實(shí)施例三所示方法實(shí)施例的技術(shù)方案,其實(shí)現(xiàn)原理相類似,此處不再贅述。在本實(shí)施例中,通過(guò)當(dāng)接收到客戶端服務(wù)器發(fā)送的獲取節(jié)目的請(qǐng)求時(shí),將節(jié)目目錄中的該獲取節(jié)目的請(qǐng)求中的節(jié)目的名稱對(duì)應(yīng)的訪問數(shù)量加1,作為更新后的訪問數(shù)量,并通過(guò)每隔預(yù)定時(shí)間,獲取節(jié)目目錄中的各個(gè)節(jié)目的名稱對(duì)應(yīng)的訪問數(shù)量,并根據(jù)該訪問數(shù)量,獲取與之對(duì)應(yīng)的節(jié)目的名稱對(duì)應(yīng)排列位置,以及該排列位置對(duì)應(yīng)的節(jié)目的名稱對(duì)應(yīng)的在DHT網(wǎng)絡(luò)中緩存的副本的理論數(shù)量,從而在實(shí)際數(shù)量小于理論數(shù)量時(shí),觸發(fā)緩存服務(wù)器中增加該節(jié)目的名稱對(duì)應(yīng)的副本;或者,在實(shí)際數(shù)量大于理論數(shù)量時(shí),觸發(fā)緩存服務(wù)器中減少該節(jié)目的名稱對(duì)應(yīng)的副本,從而使得重尾節(jié)目也有相對(duì)的冷熱之分,并在散列后每個(gè)緩存服務(wù)器中保存的重尾節(jié)目對(duì)應(yīng)的副本的數(shù)量和訪問量在概率上都均勻,進(jìn)而有效地均衡了 DHT網(wǎng)絡(luò)中各個(gè)緩存服務(wù)器的負(fù)載。圖9為本發(fā)明實(shí)施例九提供的客戶端服務(wù)器的結(jié)構(gòu)示意圖,如圖9所示,本實(shí)施例的客戶端服務(wù)器包括第二發(fā)送模塊21和第一節(jié)目數(shù)據(jù)獲取模塊22 ;其中,第二發(fā)送模塊 21用于發(fā)送獲取節(jié)目的請(qǐng)求給跟蹤服務(wù)器,獲取節(jié)目的請(qǐng)求包括節(jié)目的名稱;第一節(jié)目數(shù)據(jù)獲取模塊22用于接收跟蹤服務(wù)器返回的信息,并根據(jù)信息獲取節(jié)目的名稱對(duì)應(yīng)的節(jié)目數(shù)據(jù)或者副本。具體的,圖10為本發(fā)明實(shí)施例九提供的客戶端服務(wù)器中第一節(jié)目數(shù)據(jù)獲取模塊 22的一個(gè)結(jié)構(gòu)示意圖,如圖10所示,若信息為節(jié)目的名稱對(duì)應(yīng)的節(jié)目數(shù)據(jù)在DHT網(wǎng)絡(luò)中緩存的關(guān)鍵字列表,則第一節(jié)目數(shù)據(jù)獲取模塊22包括第一接收單元221、目標(biāo)緩存服務(wù)器獲取單元222和第一節(jié)目數(shù)據(jù)獲取單元223,其中,第一接收單元221用于接收跟蹤服務(wù)器返回的關(guān)鍵字列表;目標(biāo)緩存服務(wù)器獲取單元222用于向關(guān)鍵字列表中哈希值對(duì)應(yīng)的緩存服務(wù)器發(fā)送響應(yīng)請(qǐng)求,并將第一個(gè)返回響應(yīng)的緩存服務(wù)器作為目標(biāo)緩存服務(wù)器;第一節(jié)目數(shù)據(jù)獲取單元223用于發(fā)送獲取節(jié)目的請(qǐng)求給目標(biāo)緩存服務(wù)器,并接收目標(biāo)緩存服務(wù)器返回的節(jié)目的名稱對(duì)應(yīng)的副本。圖11為本發(fā)明實(shí)施例九提供的客戶端服務(wù)器中第一節(jié)目數(shù)據(jù)獲取模塊22的另一個(gè)結(jié)構(gòu)示意圖,如圖11所示,若信息為源服務(wù)器的地址,則第一節(jié)目數(shù)據(jù)獲取模塊22包括 第二接收單元2M和第二節(jié)目數(shù)據(jù)獲取單元225,其中,第二接收單元2M用于接收跟蹤服務(wù)器返回的源服務(wù)器的地址;第二節(jié)目數(shù)據(jù)獲取單元225用于發(fā)送獲取節(jié)目的請(qǐng)求給源服務(wù)器的地址對(duì)應(yīng)的源服務(wù)器,并接收源服務(wù)器返回的節(jié)目的名稱對(duì)應(yīng)的節(jié)目數(shù)據(jù)。本實(shí)施例的客戶端服務(wù)器可以執(zhí)行實(shí)施例四所示方法實(shí)施例的技術(shù)方案,其實(shí)現(xiàn)原理相類似,此處不再贅述。在本實(shí)施例中,通過(guò)發(fā)送獲取節(jié)目的請(qǐng)求給跟蹤服務(wù)器,當(dāng)跟蹤服務(wù)器返回的信息為關(guān)鍵字列表時(shí),則可以從緩存服務(wù)器中獲取該獲取節(jié)目的請(qǐng)求中節(jié)目的名稱對(duì)應(yīng)的副本;當(dāng)跟蹤服務(wù)器返回的信息為源服務(wù)器的地址時(shí),則可以從源服務(wù)器的地址對(duì)應(yīng)的源服務(wù)器中獲取節(jié)目的名稱對(duì)應(yīng)的節(jié)目數(shù)據(jù),從而有效地緩解了重尾節(jié)目集整體帶來(lái)的大量流量對(duì)源服務(wù)器產(chǎn)生的巨大壓力。圖12為本發(fā)明實(shí)施例十提供的緩存服務(wù)器的結(jié)構(gòu)示意圖,如圖12所示,本實(shí)施例的緩存服務(wù)器包括第二接收模塊31、第三判斷模塊32和第二節(jié)目數(shù)據(jù)獲取模塊33 ;其中,第二接收模塊31用于接收跟蹤服務(wù)器發(fā)送的副本處理消息,該副本處理消息包括哈希值和節(jié)目的名稱;第三判斷模塊32用于判斷該哈希值是否在自身維護(hù)的哈希值的范圍內(nèi); 第二節(jié)目數(shù)據(jù)獲取模塊33用于若第三判斷模塊32判斷出在,則對(duì)節(jié)目的名稱對(duì)應(yīng)的副本進(jìn)行相應(yīng)的處理。本實(shí)施例的緩存服務(wù)器可以執(zhí)行實(shí)施例五所示方法實(shí)施例的技術(shù)方案,其實(shí)現(xiàn)原理相類似,此處不再贅述。在本實(shí)施例中,通過(guò)接收跟蹤服務(wù)器發(fā)送的副本處理消息,判斷該副本處理消息中該哈希值是否在自身維護(hù)的哈希值的范圍內(nèi),若在,則對(duì)該副本處理消息中該節(jié)目的名稱對(duì)應(yīng)的副本進(jìn)行相應(yīng)的處理,從而使得重尾節(jié)目也有相對(duì)的冷熱之分,進(jìn)而有效地均衡了 DHT網(wǎng)絡(luò)中各個(gè)緩存服務(wù)器的負(fù)載。進(jìn)一步的,在上述實(shí)施例十的基礎(chǔ)上,在本發(fā)明的另一個(gè)實(shí)施例中,第二節(jié)目數(shù)據(jù)獲取模塊33可以具體用于若第三判斷模塊32判斷出在,且副本處理消息為新增副本的消息以及新增副本的消息還包括源服務(wù)器地址,則從與源服務(wù)器的地址對(duì)應(yīng)的源服務(wù)器中, 獲取與節(jié)目的名稱對(duì)應(yīng)的節(jié)目數(shù)據(jù),并將節(jié)目數(shù)據(jù)作為副本,再保存該副本;或者,該第二節(jié)目數(shù)據(jù)獲取模塊33還可以具體用于若第三判斷模塊32判斷出在,且副本處理消息為刪除副本消息,則刪除與節(jié)目的名稱對(duì)應(yīng)的副本。還需要說(shuō)明的是,若第三判斷模塊32判斷出不在,則該緩存服務(wù)器還可以包括 轉(zhuǎn)發(fā)模塊,用于若第三判斷模塊32判斷出不在,則根據(jù)DHT網(wǎng)絡(luò)中的路由轉(zhuǎn)發(fā)表,獲取與哈希值對(duì)應(yīng)的緩存服務(wù)器,并將增加副本的消息或者刪除副本的消息轉(zhuǎn)發(fā)給哈希值對(duì)應(yīng)的緩存服務(wù)器中。本實(shí)施例的緩存服務(wù)器可以執(zhí)行實(shí)施例六所示方法實(shí)施例的技術(shù)方案,其實(shí)現(xiàn)原理相類似,此處不再贅述。在本實(shí)施例中,通過(guò)接收跟蹤服務(wù)器發(fā)送的副本處理消息,判斷該副本處理消息中該哈希值是否在自身維護(hù)的哈希值的范圍內(nèi),若在,則對(duì)該副本處理消息中該節(jié)目的名稱對(duì)應(yīng)的節(jié)目數(shù)據(jù)刪除或者增加;若不在,則將副本處理消息轉(zhuǎn)發(fā)給副本處理消息中關(guān)鍵字對(duì)應(yīng)的緩存服務(wù)器中進(jìn)行相應(yīng)的處理,從而使得重尾節(jié)目也有相對(duì)的冷熱之分,進(jìn)而有效地均衡了 DHT網(wǎng)絡(luò)中各個(gè)緩存服務(wù)器的負(fù)載。圖13為本發(fā)明實(shí)施例十一提供的節(jié)目的處理系統(tǒng)的結(jié)構(gòu)示意圖,如圖13所示,該系統(tǒng)包括源服務(wù)器41、跟蹤服務(wù)器42、客戶端服務(wù)器43和緩存服務(wù)器44,其中,跟蹤服務(wù)器42可以執(zhí)行實(shí)施例一至實(shí)施例三任一所示方法實(shí)施例的技術(shù)方案;客戶端服務(wù)器43可以執(zhí)行實(shí)施例四所示方法實(shí)施例的技術(shù)方案;緩存服務(wù)器44可以執(zhí)行實(shí)施例五或?qū)嵤├痉椒▽?shí)施例的技術(shù)方案,其實(shí)現(xiàn)原理相類似,此處不再贅述。值得注意的是,該緩存服務(wù)器44的數(shù)量可以為多個(gè),且均設(shè)置在DHT網(wǎng)絡(luò)中;另外,客戶端服務(wù)器43的數(shù)量也可以為多個(gè)。本實(shí)施例系統(tǒng)實(shí)現(xiàn)了對(duì)重尾節(jié)目的優(yōu)化,并有效地緩解了重尾節(jié)目集整體帶來(lái)的大量流量對(duì)源服務(wù)器產(chǎn)生的巨大壓力。本領(lǐng)域普通技術(shù)人員可以理解實(shí)現(xiàn)上述方法實(shí)施例的全部或部分步驟可以通過(guò)程序指令相關(guān)的硬件來(lái)完成,前述的程序可以存儲(chǔ)于一計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中,該程序在執(zhí)行時(shí),執(zhí)行包括上述方法實(shí)施例的步驟;而前述的存儲(chǔ)介質(zhì)包括R0M、RAM、磁碟或者光盤等各種可以存儲(chǔ)程序代碼的介質(zhì)。
最后應(yīng)說(shuō)明的是以上實(shí)施例僅用以說(shuō)明本發(fā)明的技術(shù)方案,而非對(duì)其限制;盡管參照前述實(shí)施例對(duì)本發(fā)明進(jìn)行了詳細(xì)的說(shuō)明,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解其依然可以對(duì)前述各實(shí)施例所記載的技術(shù)方案進(jìn)行修改,或者對(duì)其中部分技術(shù)特征進(jìn)行等同替換;而這些修改或者替換,并不使相應(yīng)技術(shù)方案的本質(zhì)脫離本發(fā)明各實(shí)施例技術(shù)方案的精神和范圍。
權(quán)利要求
1.一種節(jié)目的處理方法,其特征在于,包括每隔預(yù)定時(shí)間,根據(jù)預(yù)先存儲(chǔ)的節(jié)目目錄中節(jié)目的名稱對(duì)應(yīng)的訪問數(shù)量,獲取所述節(jié)目的名稱對(duì)應(yīng)的在分布式哈希表網(wǎng)絡(luò)中緩存的副本的理論數(shù)量;判斷所述節(jié)目的名稱對(duì)應(yīng)的在分布式哈希表網(wǎng)絡(luò)中緩存的副本的理論數(shù)量大于還是小于所述節(jié)目的名稱對(duì)應(yīng)的在所述分布式哈希表網(wǎng)絡(luò)中緩存的副本的實(shí)際數(shù)量,若大于, 則根據(jù)哈希算法,分別將所述節(jié)目的名稱和新增的副本的編號(hào)進(jìn)行哈希計(jì)算,獲取每個(gè)所述新增的副本的編號(hào)對(duì)應(yīng)的哈希值;將所述節(jié)目的名稱、所述節(jié)目的名稱對(duì)應(yīng)的每個(gè)所述新增的副本的編號(hào)對(duì)應(yīng)的哈希值和所述節(jié)目的名稱對(duì)應(yīng)的源服務(wù)器的地址攜帶在增加副本的消息中發(fā)送給所述分布式哈希表網(wǎng)絡(luò)中與所述哈希值對(duì)應(yīng)的緩存服務(wù)器中,以供所述緩存服務(wù)器根據(jù)所述增加副本的消息,從所述源服務(wù)器的地址對(duì)應(yīng)的源服務(wù)器獲取與所述節(jié)目的名稱對(duì)應(yīng)的節(jié)目數(shù)據(jù),并將所述節(jié)目數(shù)據(jù)作為副本進(jìn)行保存。
2.根據(jù)權(quán)利要求1所述的節(jié)目的處理方法,其特征在于,還包括若小于,將刪除的副本的編號(hào)對(duì)應(yīng)的哈希值和節(jié)目的名稱攜帶在刪除副本的消息中, 發(fā)送給所述刪除的副本的編號(hào)對(duì)應(yīng)的哈希值對(duì)應(yīng)的緩存服務(wù)器中,以供所述緩存服務(wù)器根據(jù)接收到的所述刪除副本的消息,將所述節(jié)目的名稱對(duì)應(yīng)的副本刪除;刪除所述節(jié)目目錄中所述節(jié)目的名稱對(duì)應(yīng)的關(guān)鍵字列表中與所述刪除的副本的編號(hào)對(duì)應(yīng)哈希值。
3.根據(jù)權(quán)利要求1所述的節(jié)目的處理方法,其特征在于,還包括接收客戶端服務(wù)器發(fā)送的獲取節(jié)目的請(qǐng)求,所述獲取節(jié)目的請(qǐng)求包括節(jié)目的名稱;若所述節(jié)目的名稱記錄在所述節(jié)目目錄中,判斷在所述節(jié)目目錄中,所述節(jié)目的名稱對(duì)應(yīng)在所述分布式哈希表網(wǎng)絡(luò)中的緩存的副本的實(shí)際數(shù)量是否為零;根據(jù)判斷結(jié)果,在所述節(jié)目目錄中獲取與所述節(jié)目的名稱對(duì)應(yīng)的信息,并將所述信息發(fā)送給所述客戶端服務(wù)器,以供所述客戶端服務(wù)器根據(jù)所述信息,獲取所述節(jié)目的名稱對(duì)應(yīng)的節(jié)目數(shù)據(jù)或者副本。
4.根據(jù)權(quán)利要求3所述的節(jié)目的處理方法,其特征在于,所述根據(jù)判斷結(jié)果,在所述節(jié)目目錄中獲取與所述節(jié)目的名稱對(duì)應(yīng)的信息,并將所述信息發(fā)送給所述客戶端服務(wù)器, 以供所述客戶端服務(wù)器根據(jù)所述信息,獲取所述節(jié)目的名稱對(duì)應(yīng)的節(jié)目數(shù)據(jù)或者副本,包括根據(jù)所述節(jié)目的名稱對(duì)應(yīng)的在所述分布式哈希表網(wǎng)絡(luò)中緩存的副本的實(shí)際數(shù)量不為零的判斷結(jié)果,在所述節(jié)目目錄中獲取與所述節(jié)目的名稱對(duì)應(yīng)的關(guān)鍵字列表,并將所述關(guān)鍵字列表發(fā)送給所述客戶端服務(wù)器,以供所述客戶端服務(wù)器根據(jù)所述關(guān)鍵字列表,獲取與所述節(jié)目的名稱對(duì)應(yīng)的副本;或者,根據(jù)所述節(jié)目的名稱對(duì)應(yīng)的在所述分布式哈希表網(wǎng)絡(luò)中緩存的副本的實(shí)際數(shù)量為零的判斷結(jié)果,在所述節(jié)目目錄中獲取與所述節(jié)目的名稱對(duì)應(yīng)的源服務(wù)器的地址,并將所述源服務(wù)器的地址發(fā)送給所述客戶端服務(wù)器,以供所述客戶端服務(wù)器根據(jù)所述源服務(wù)器的地址,獲取與所述節(jié)目的名稱對(duì)應(yīng)的節(jié)目數(shù)據(jù)。
5.根據(jù)權(quán)利要求3所述的節(jié)目的處理方法,其特征在于,還包括將所述節(jié)目目錄中的所述節(jié)目的名稱對(duì)應(yīng)的訪問數(shù)量加1,作為更新后的訪問數(shù)量。
6.一種節(jié)目的處理方法,其特征在于,包括接收跟蹤服務(wù)器發(fā)送的副本處理消息,所述副本處理消息包括哈希值和節(jié)目的名稱;判斷所述哈希值是否在自身維護(hù)的哈希值的范圍內(nèi),若在,則對(duì)所述節(jié)目的名稱對(duì)應(yīng)的副本進(jìn)行相應(yīng)的處理。
7.根據(jù)權(quán)利要求6所述的節(jié)目的處理方法,其特征在于,所述對(duì)所述節(jié)目的名稱對(duì)應(yīng)的副本進(jìn)行相應(yīng)的處理,包括若所述副本處理消息為新增副本的消息,且所述新增副本的消息還包括源服務(wù)器的地址,則從與所述源服務(wù)器的地址對(duì)應(yīng)的源服務(wù)器中,獲取與所述節(jié)目的名稱對(duì)應(yīng)的節(jié)目數(shù)據(jù),并將所述節(jié)目數(shù)據(jù)作為副本,再保存所述副本;或者,若所述副本處理消息為刪除副本的消息,則刪除與所述節(jié)目的名稱對(duì)應(yīng)的副本。
8.—種跟蹤服務(wù)器,其特征在于,包括節(jié)目目錄存儲(chǔ)模塊,用于存儲(chǔ)節(jié)目目錄;副本的理論數(shù)量獲取模塊,用于每隔預(yù)定時(shí)間,根據(jù)預(yù)先存儲(chǔ)的節(jié)目目錄中節(jié)目的名稱對(duì)應(yīng)的訪問數(shù)量,獲取所述節(jié)目的名稱對(duì)應(yīng)的在分布式哈希表網(wǎng)絡(luò)中緩存的副本的理論數(shù)量;第一判斷模塊,用于判斷所述節(jié)目的名稱對(duì)應(yīng)的在分布式哈希表網(wǎng)絡(luò)中緩存的副本的理論數(shù)量大于還是小于所述節(jié)目的名稱對(duì)應(yīng)的在所述分布式哈希表網(wǎng)絡(luò)中緩存的副本的實(shí)際數(shù)量;哈希值獲取模塊,用于若所述第一判斷模塊判斷出大于,則根據(jù)哈希算法,分別將所述節(jié)目的名稱和新增的副本的編號(hào)進(jìn)行哈希計(jì)算,獲取每個(gè)所述新增的副本的編號(hào)對(duì)應(yīng)的哈希值;第一發(fā)送模塊,用于將所述節(jié)目的名稱、所述節(jié)目的名稱對(duì)應(yīng)的每個(gè)所述新增的副本的編號(hào)對(duì)應(yīng)的哈希值和所述節(jié)目的名稱對(duì)應(yīng)的源服務(wù)器的地址攜帶在增加副本的消息中發(fā)送給所述分布式哈希表網(wǎng)絡(luò)中與所述哈希值對(duì)應(yīng)的緩存服務(wù)器中,以供所述緩存服務(wù)器根據(jù)所述增加副本的消息,從所述源服務(wù)器的地址對(duì)應(yīng)的源服務(wù)器獲取與所述節(jié)目的名稱對(duì)應(yīng)的節(jié)目數(shù)據(jù),并將所述節(jié)目數(shù)據(jù)作為副本進(jìn)行保存。
9.根據(jù)權(quán)利要求8所述的跟蹤服務(wù)器,其特征在于,所述第一發(fā)送模塊還用于若所述第一判斷模塊判斷出小于,則將刪除的副本的編號(hào)對(duì)應(yīng)的哈希值和節(jié)目的名稱攜帶在刪除副本的消息中,發(fā)送給所述刪除的副本的編號(hào)對(duì)應(yīng)的哈希值對(duì)應(yīng)的緩存服務(wù)器中,以供所述緩存服務(wù)器根據(jù)接收到的所述刪除副本的消息,將所述節(jié)目的名稱對(duì)應(yīng)的副本刪除;所述跟蹤服務(wù)器還包括刪除模塊,用于刪除所述節(jié)目目錄中所述節(jié)目的名稱對(duì)應(yīng)的關(guān)鍵字列表中與所述刪除的副本的編號(hào)對(duì)應(yīng)哈希值。
10.根據(jù)權(quán)利要求8所述的跟蹤服務(wù)器,其特征在于,還包括第一接收模塊,用于接收客戶端服務(wù)器發(fā)送的獲取節(jié)目的請(qǐng)求,所述獲取節(jié)目的請(qǐng)求包括節(jié)目的名稱;第二判斷模塊,用于若所述節(jié)目的名稱記錄在所述節(jié)目目錄中,判斷在所述節(jié)目目錄中,所述節(jié)目的名稱對(duì)應(yīng)在所述分布式哈希表網(wǎng)絡(luò)中的緩存的副本的實(shí)際數(shù)量是否為零;所述第一發(fā)送模塊還用于根據(jù)判斷結(jié)果,在所述節(jié)目目錄中獲取與所述節(jié)目的名稱對(duì)應(yīng)的信息,并將所述信息發(fā)送給所述客戶端服務(wù)器,以供所述客戶端服務(wù)器根據(jù)所述信息,獲取所述節(jié)目的名稱對(duì)應(yīng)的節(jié)目數(shù)據(jù)或者副本。
11.根據(jù)權(quán)利要求10所述的跟蹤服務(wù)器,其特征在于,所述第一發(fā)送模塊具體用于根據(jù)所述節(jié)目的名稱對(duì)應(yīng)的在所述分布式哈希表網(wǎng)絡(luò)中緩存的副本的實(shí)際數(shù)量不為零的判斷結(jié)果,在所述節(jié)目目錄中獲取與所述節(jié)目的名稱對(duì)應(yīng)的關(guān)鍵字列表,并將所述關(guān)鍵字列表發(fā)送給所述客戶端服務(wù)器,以供所述客戶端服務(wù)器根據(jù)所述關(guān)鍵字列表,獲取與所述節(jié)目的名稱對(duì)應(yīng)的副本;或者,所述第一發(fā)送模塊具體用于根據(jù)所述節(jié)目的名稱對(duì)應(yīng)的在所述分布式哈希表網(wǎng)絡(luò)中緩存的副本的實(shí)際數(shù)量為零的判斷結(jié)果,在所述節(jié)目目錄中獲取與所述節(jié)目的名稱對(duì)應(yīng)的源服務(wù)器的地址,并將所述源服務(wù)器的地址發(fā)送給所述客戶端服務(wù)器,以供所述客戶端服務(wù)器根據(jù)所述源服務(wù)器的地址,獲取與所述節(jié)目的名稱對(duì)應(yīng)的節(jié)目數(shù)據(jù)。
12.根據(jù)權(quán)利要求10所述的跟蹤服務(wù)器,其特征在于,還包括更新模塊,用于將所述節(jié)目目錄中的所述節(jié)目的名稱對(duì)應(yīng)的訪問數(shù)量加1,作為更新后的訪問數(shù)量。
13.一種緩存服務(wù)器,其特征在于,包括第二接收模塊,用于接收所述跟蹤服務(wù)器發(fā)送的副本處理消息,所述副本處理消息包括哈希值和節(jié)目的名稱;第三判斷模塊,用于判斷所述哈希值是否在自身維護(hù)的哈希值的范圍內(nèi);第二節(jié)目數(shù)據(jù)獲取模塊,用于若所述第三判斷模塊判斷出在,則對(duì)所述節(jié)目的名稱對(duì)應(yīng)的副本進(jìn)行相應(yīng)的處理。
14.根據(jù)權(quán)利要求13所述的緩存服務(wù)器,其特征在于,所述第二節(jié)目數(shù)據(jù)獲取模塊具體用于若所述第三判斷模塊判斷出在,且所述副本處理消息為新增副本的消息以及所述新增副本的消息還包括源服務(wù)器的地址,則從與所述源服務(wù)器的地址對(duì)應(yīng)的源服務(wù)器中,獲取與所述節(jié)目的名稱對(duì)應(yīng)的節(jié)目數(shù)據(jù),并將所述節(jié)目數(shù)據(jù)作為副本,再保存所述副本;或者,所述第二節(jié)目數(shù)據(jù)獲取模塊具體用于若所述第三判斷模塊判斷出在,且所述副本處理消息為刪除副本的消息,則刪除與所述節(jié)目的名稱對(duì)應(yīng)的副本。
15.一種節(jié)目的處理系統(tǒng),其特征在于,包括源服務(wù)器、客戶端服務(wù)器、如權(quán)利要求8 至12任一項(xiàng)所述的跟蹤服務(wù)器和如權(quán)利要求13或14所述的緩存服務(wù)器。
全文摘要
本發(fā)明提供一種節(jié)目的處理方法和系統(tǒng)以及裝置,該方法包括每隔預(yù)定時(shí)間,根據(jù)預(yù)先存儲(chǔ)的節(jié)目目錄中節(jié)目的名稱對(duì)應(yīng)的訪問數(shù)量,獲取節(jié)目的名稱對(duì)應(yīng)的在DHT網(wǎng)絡(luò)中緩存的副本的理論數(shù)量;判斷副本的理論數(shù)量大于還是小于副本的實(shí)際數(shù)量,若大于,則根據(jù)哈希算法分別將節(jié)目的名稱和新增的副本的編號(hào)進(jìn)行哈希計(jì)算,獲取每個(gè)新增的副本的編號(hào)對(duì)應(yīng)的哈希值;將節(jié)目的名稱、以及與其對(duì)應(yīng)的每個(gè)所述新增的副本的編號(hào)對(duì)應(yīng)的哈希值和源服務(wù)器的地址攜帶在增加副本的消息中發(fā)送給DHT網(wǎng)絡(luò)中與哈希值對(duì)應(yīng)的緩存服務(wù)器中,以供緩存服務(wù)器根據(jù)增加副本的消息,從源服務(wù)器的地址對(duì)應(yīng)的源服務(wù)器獲取與節(jié)目的名稱對(duì)應(yīng)的節(jié)目數(shù)據(jù),并將節(jié)目數(shù)據(jù)作為副本進(jìn)行保存。
文檔編號(hào)H04N21/254GK102164309SQ201110067718
公開日2011年8月24日 申請(qǐng)日期2011年3月21日 優(yōu)先權(quán)日2011年3月21日
發(fā)明者余宏亮, 徐亦達(dá), 龍有水 申請(qǐng)人:華為技術(shù)有限公司, 清華大學(xué)