一種靜態(tài)文件服務(wù)方法及裝置的制造方法
【專(zhuān)利摘要】本發(fā)明實(shí)施例提供了一種靜態(tài)文件服務(wù)方法及裝置,所述靜態(tài)文件服務(wù)裝置位于內(nèi)容分發(fā)網(wǎng)絡(luò)CDN服務(wù)器與動(dòng)態(tài)接口服務(wù)器之間;所述方法包括:生成并存儲(chǔ)所述CDN服務(wù)器所需的靜態(tài)文件;接收所述CDN服務(wù)器發(fā)來(lái)的對(duì)目標(biāo)靜態(tài)文件的請(qǐng)求;從所存儲(chǔ)的靜態(tài)文件中讀取所述目標(biāo)靜態(tài)文件;將讀取的目標(biāo)靜態(tài)文件發(fā)送給所述CDN服務(wù)器。這樣,眾多CDN服務(wù)器發(fā)出的大量回源請(qǐng)求都會(huì)由該靜態(tài)文件服務(wù)裝置接收并處理,大大減輕了動(dòng)態(tài)接口服務(wù)器上的壓力。同時(shí),靜態(tài)文件服務(wù)裝置作為針對(duì)回源請(qǐng)求的唯一響應(yīng)源,以自身數(shù)據(jù)一致性,可以保證返回?cái)?shù)據(jù)的一致性,避免了動(dòng)態(tài)接口服務(wù)器升級(jí)期間會(huì)出現(xiàn)先后請(qǐng)求同一數(shù)據(jù)卻可能會(huì)得到不同數(shù)據(jù)結(jié)果的情況。
【專(zhuān)利說(shuō)明】
一種靜態(tài)文件服務(wù)方法及裝置
技術(shù)領(lǐng)域
[0001 ]本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及一種靜態(tài)文件服務(wù)方法及裝置。
【背景技術(shù)】
[0002]CDN(Content Delivery Network,內(nèi)容分發(fā)網(wǎng)絡(luò))的作用是將用戶的訪問(wèn)指向離用戶最近的工作正常的服務(wù)器,從而盡可能避開(kāi)互聯(lián)網(wǎng)上可能影響數(shù)據(jù)傳輸速度和穩(wěn)定性的環(huán)節(jié),使用戶就近取得所需內(nèi)容,從而提高用戶訪問(wèn)時(shí)的響應(yīng)速度。CDN服務(wù)器一般會(huì)部署在各區(qū)域的網(wǎng)絡(luò)服務(wù)提供商節(jié)點(diǎn)處。
[0003]當(dāng)用戶向⑶N服務(wù)器請(qǐng)求靜態(tài)文件時(shí),如果該靜態(tài)文件不在⑶N服務(wù)器上,則⑶N月艮務(wù)器會(huì)轉(zhuǎn)而向動(dòng)態(tài)接口服務(wù)器請(qǐng)求該靜態(tài)文件以滿足用戶的需求,這種現(xiàn)象可以稱(chēng)之為數(shù)據(jù)靜態(tài)回源。由于CDN服務(wù)器不會(huì)緩存回源所得到的數(shù)據(jù),所以即使用戶先后兩次請(qǐng)求同樣的靜態(tài)文件,CDN服務(wù)器也會(huì)相應(yīng)的向動(dòng)態(tài)接口服務(wù)器回源兩次,這就導(dǎo)致了回源請(qǐng)求對(duì)動(dòng)態(tài)接口服務(wù)器所產(chǎn)生的壓力一直持續(xù)。
[0004]在現(xiàn)有技術(shù)中,可以指定動(dòng)態(tài)接口服務(wù)器中的少量幾臺(tái)作為靜態(tài)回源請(qǐng)求的處理服務(wù)器,這樣將靜態(tài)回源請(qǐng)求帶來(lái)的壓力集中在這幾臺(tái)服務(wù)器上,可避免對(duì)其他服務(wù)器造成干擾,然而,這種方案本質(zhì)上并未使回源請(qǐng)求減少,其后果是這少數(shù)幾臺(tái)動(dòng)態(tài)接口服務(wù)器會(huì)因負(fù)載持續(xù)過(guò)高而影響服務(wù),甚至產(chǎn)生宕機(jī)失效的可能。而如果使用多臺(tái)服務(wù)器分擔(dān)壓力,即處理回源請(qǐng)求的動(dòng)態(tài)接口服務(wù)器數(shù)量較多,則也可能會(huì)產(chǎn)生如下“臟數(shù)據(jù)”問(wèn)題:在對(duì)服務(wù)器進(jìn)行升級(jí)時(shí),通常采取按順序、分批次升級(jí)的策略,當(dāng)接收到回源請(qǐng)求時(shí),會(huì)隨機(jī)選取一臺(tái)服務(wù)器進(jìn)行處理,這樣升級(jí)期間就會(huì)出現(xiàn)先后請(qǐng)求同一數(shù)據(jù)卻可能會(huì)得到不同數(shù)據(jù)結(jié)果的情況,即出現(xiàn)了數(shù)據(jù)不一致,產(chǎn)生了 “臟數(shù)據(jù)”。
[0005]可見(jiàn)在現(xiàn)有技術(shù)中,在處理回源請(qǐng)求時(shí),尚沒(méi)有方案能夠同時(shí)解決減輕服務(wù)器壓力和避免產(chǎn)生臟數(shù)據(jù)這兩個(gè)技術(shù)問(wèn)題。
【發(fā)明內(nèi)容】
[0006]為克服現(xiàn)有技術(shù)中存在的問(wèn)題,本發(fā)明提供一種靜態(tài)文件服務(wù)方法及裝置,以同時(shí)解決減輕服務(wù)器壓力和避免產(chǎn)生臟數(shù)據(jù)這兩個(gè)技術(shù)問(wèn)題。
[0007]根據(jù)本發(fā)明實(shí)施例的第一方面,提供一種靜態(tài)文件服務(wù)方法,所述方法用于靜態(tài)文件服務(wù)裝置,所述靜態(tài)文件服務(wù)裝置位于內(nèi)容分發(fā)網(wǎng)絡(luò)CDN服務(wù)器與動(dòng)態(tài)接口服務(wù)器之間;所述方法包括:
[0008]生成并存儲(chǔ)所述⑶N服務(wù)器所需的靜態(tài)文件;
[0009]接收所述CDN服務(wù)器發(fā)來(lái)的對(duì)目標(biāo)靜態(tài)文件的請(qǐng)求;
[0010]從所存儲(chǔ)的靜態(tài)文件中讀取所述目標(biāo)靜態(tài)文件;
[0011 ]將讀取的所述目標(biāo)靜態(tài)文件發(fā)送給所述⑶N服務(wù)器。
[0012]根據(jù)本發(fā)明實(shí)施例的第二方面,提供一種靜態(tài)文件服務(wù)裝置,所述裝置位于內(nèi)容分發(fā)網(wǎng)絡(luò)CDN服務(wù)器與動(dòng)態(tài)接口服務(wù)器之間;所述裝置包括:
[0013]靜態(tài)文件生成單元,用于生成所述⑶N服務(wù)器所需的靜態(tài)文件;
[0014]靜態(tài)文件存儲(chǔ)單元,用于存儲(chǔ)所述靜態(tài)文件生成單元所生成的靜態(tài)文件,接收所述CDN服務(wù)器發(fā)來(lái)的對(duì)目標(biāo)靜態(tài)文件的請(qǐng)求,從所存儲(chǔ)的靜態(tài)文件中讀取所述目標(biāo)靜態(tài)文件,將讀取的所述目標(biāo)靜態(tài)文件發(fā)送給所述CDN服務(wù)器。
[0015]本發(fā)明的實(shí)施例提供的技術(shù)方案可以包括以下有益效果:
[0016]本發(fā)明實(shí)施例中,在CDN服務(wù)器與動(dòng)態(tài)接口服務(wù)器之間增設(shè)靜態(tài)文件服務(wù)裝置,該靜態(tài)文件服務(wù)裝置上存儲(chǔ)有CND所需的靜態(tài)文件,眾多CDN服務(wù)器發(fā)出的大量回源請(qǐng)求都會(huì)由該靜態(tài)文件服務(wù)裝置接收并處理,而不會(huì)再被發(fā)到動(dòng)態(tài)接口服務(wù)器上,也即靜態(tài)文件服務(wù)裝置將原本發(fā)到動(dòng)態(tài)接口服務(wù)器的回源請(qǐng)求都聚集到自身進(jìn)行處理,而該靜態(tài)文件服務(wù)裝置只需與動(dòng)態(tài)接口服務(wù)器之間產(chǎn)生少量通信,這樣就將CDN服務(wù)器可能存在的對(duì)動(dòng)態(tài)接口服務(wù)器的大量回源請(qǐng)求(例如通常是全天百萬(wàn)至千萬(wàn)級(jí)訪問(wèn)量,對(duì)應(yīng)可能產(chǎn)生的回源請(qǐng)求會(huì)達(dá)到百萬(wàn)訪問(wèn)量),降低到靜態(tài)文件服務(wù)裝置對(duì)動(dòng)態(tài)接口服務(wù)器的少量請(qǐng)求(例如通常是全天幾萬(wàn)訪問(wèn)量),從而大大減輕了動(dòng)態(tài)接口服務(wù)器上的壓力,避免了回源請(qǐng)求對(duì)線上業(yè)務(wù)長(zhǎng)時(shí)間的持續(xù)影響。
[0017]同時(shí),靜態(tài)文件服務(wù)裝置集中響應(yīng)CDN靜態(tài)回源請(qǐng)求,作為針對(duì)回源請(qǐng)求的唯一響應(yīng)源,以自身數(shù)據(jù)一致性,可以保證返回?cái)?shù)據(jù)的一致性,避免了動(dòng)態(tài)接口服務(wù)器升級(jí)期間會(huì)出現(xiàn)先后請(qǐng)求同一數(shù)據(jù)卻可能會(huì)得到不同數(shù)據(jù)結(jié)果的情況。
[0018]另外,靜態(tài)文件服務(wù)裝置仍然使用靜態(tài)文件響應(yīng)回源請(qǐng)求,充分利用了靜態(tài)文件較接口訪問(wèn)更快的特點(diǎn),提升了回源請(qǐng)求響應(yīng)速度,進(jìn)一步提升了系統(tǒng)的可用性。
[0019]應(yīng)當(dāng)理解的是,以上的一般描述和后文的細(xì)節(jié)描述僅是示例性和解釋性的,并不能限制本發(fā)明。
【附圖說(shuō)明】
[0020]此處的附圖被并入說(shuō)明書(shū)中并構(gòu)成本說(shuō)明書(shū)的一部分,示出了符合本發(fā)明的實(shí)施例,并與說(shuō)明書(shū)一起用于解釋本發(fā)明的原理。
[0021 ]圖1是根據(jù)一示例性實(shí)施例示出的一種靜態(tài)文件服務(wù)方法的流程圖;
[0022]圖2是現(xiàn)有技術(shù)中的網(wǎng)絡(luò)連接不意圖;
[0023]圖3是根據(jù)一示例性實(shí)施例示出的網(wǎng)絡(luò)連接示意圖;
[0024]圖4是根據(jù)一示例性實(shí)施例示出的一種靜態(tài)文件服務(wù)方法的流程圖;
[0025]圖5是根據(jù)一示例性實(shí)施例示出的網(wǎng)絡(luò)連接示意圖;
[0026]圖6是根據(jù)一示例性實(shí)施例示出的網(wǎng)絡(luò)連接示意圖;
[0027]圖7是根據(jù)一示例性實(shí)施例示出的網(wǎng)絡(luò)連接示意圖;
[0028]圖8是根據(jù)一示例性實(shí)施例示出的一種靜態(tài)文件服務(wù)裝置的示意圖;
[0029]圖9是根據(jù)一示例性實(shí)施例示出的一種靜態(tài)文件服務(wù)裝置的示意圖;
[0030]圖10是根據(jù)一示例性實(shí)施例示出的一種靜態(tài)文件服務(wù)裝置的示意圖;
[0031]圖11是根據(jù)一示例性實(shí)施例示出的一種靜態(tài)文件服務(wù)裝置的示意圖。
【具體實(shí)施方式】
[0032]這里將詳細(xì)地對(duì)示例性實(shí)施例進(jìn)行說(shuō)明,其示例表示在附圖中。下面的描述涉及附圖時(shí),除非另有表示,不同附圖中的相同數(shù)字表示相同或相似的要素。以下示例性實(shí)施例中所描述的實(shí)施方式并不代表與本發(fā)明相一致的所有實(shí)施方式。相反,它們僅是與如所附權(quán)利要求書(shū)中所詳述的、本發(fā)明的一些方面相一致的裝置和方法的例子。
[0033]圖1是根據(jù)一示例性實(shí)施例示出的一種靜態(tài)文件服務(wù)方法的流程圖。該方法可用于靜態(tài)文件服務(wù)裝置。靜態(tài)文件服務(wù)裝置位于內(nèi)容分發(fā)網(wǎng)絡(luò)CDN服務(wù)器與動(dòng)態(tài)接口服務(wù)器之間。參見(jiàn)圖1所示,該方法可以包括:
[0034]步驟SlOl,生成并存儲(chǔ)所述⑶N服務(wù)器所需的靜態(tài)文件。
[0035]對(duì)于一些具有經(jīng)常訪問(wèn)、數(shù)據(jù)量較大、處理時(shí)間較長(zhǎng)、不包含個(gè)性化內(nèi)容、更新頻率固定等特點(diǎn)的數(shù)據(jù),通常以靜態(tài)文件的形式存儲(chǔ),在被請(qǐng)求時(shí),直接讀取內(nèi)容,響應(yīng)請(qǐng)求。
[0036]當(dāng)用戶(也可稱(chēng)為客戶端、終端)訪問(wèn)CND服務(wù)器(也可稱(chēng)為CND節(jié)點(diǎn))獲取靜態(tài)文件時(shí),如果請(qǐng)求所對(duì)應(yīng)的靜態(tài)文件在CDN上不存在,則現(xiàn)有技術(shù)中,CND會(huì)將請(qǐng)求轉(zhuǎn)發(fā)到動(dòng)態(tài)接口服務(wù)器處理。
[0037]動(dòng)態(tài)接口服務(wù)器一般通過(guò)應(yīng)用程序?qū)崟r(shí)處理訪問(wèn)者的請(qǐng)求內(nèi)容,通常包含個(gè)性化的請(qǐng)求參數(shù),響應(yīng)數(shù)據(jù)一般根據(jù)請(qǐng)求不同而不同,通常以多臺(tái)服務(wù)器組成集群形式提供服務(wù)。CDN服務(wù)器得到動(dòng)態(tài)接口服務(wù)器返回的數(shù)據(jù)后再返回給用戶,這種現(xiàn)象稱(chēng)為數(shù)據(jù)靜態(tài)回源。現(xiàn)有技術(shù)的方案可參見(jiàn)圖2所示,在圖2中,各CDN服務(wù)器會(huì)直接將靜態(tài)回源請(qǐng)求(以下簡(jiǎn)稱(chēng)回源請(qǐng)求)發(fā)給相應(yīng)的動(dòng)態(tài)接口服務(wù)器。
[0038]而在本實(shí)施例中,在⑶N服務(wù)器與動(dòng)態(tài)接口服務(wù)器之間增加了靜態(tài)文件服務(wù)裝置,該靜態(tài)文件服務(wù)裝置可代替動(dòng)態(tài)接口服務(wù)器響應(yīng)CND的回源請(qǐng)求,以減輕動(dòng)態(tài)接口服務(wù)器的壓力并保證數(shù)據(jù)的一致性。靜態(tài)文件服務(wù)裝置可以由一臺(tái)服務(wù)器構(gòu)成,也可以由多臺(tái)服務(wù)器構(gòu)成,對(duì)于靜態(tài)文件服務(wù)裝置的具體硬件、組成形式等本實(shí)施例并不進(jìn)行限制。
[0039]為了使靜態(tài)文件服務(wù)裝置可以響應(yīng)CDN的回源請(qǐng)求,需要事先在靜態(tài)文件服務(wù)裝置上生成并存儲(chǔ)所述CDN服務(wù)器所需的靜態(tài)文件。對(duì)于預(yù)設(shè)規(guī)則的具體內(nèi)容本實(shí)施例也并不進(jìn)行限制,可以在此處使用的這些規(guī)則都沒(méi)有背離本發(fā)明的精神和保護(hù)范圍。
[0040]步驟S102,接收所述⑶N服務(wù)器發(fā)來(lái)的對(duì)目標(biāo)靜態(tài)文件的請(qǐng)求。
[0041]作為示例可參見(jiàn)圖3所示,在圖3中,靜態(tài)文件服務(wù)裝置代替動(dòng)態(tài)接口服務(wù)器接收各CDN服務(wù)器的回源請(qǐng)求,此外,靜態(tài)文件服務(wù)裝置也會(huì)與動(dòng)態(tài)接口服務(wù)器進(jìn)行通信,以獲取靜態(tài)文件。
[0042]步驟S103,從所存儲(chǔ)的靜態(tài)文件中讀取所述目標(biāo)靜態(tài)文件。
[0043]步驟S104,將讀取的所述目標(biāo)靜態(tài)文件發(fā)送給所述⑶N服務(wù)器。
[0044]在本實(shí)施例中,在CDN服務(wù)器與動(dòng)態(tài)接口服務(wù)器之間增設(shè)靜態(tài)文件服務(wù)裝置,該靜態(tài)文件服務(wù)裝置上存儲(chǔ)有CND所需的靜態(tài)文件,眾多CDN服務(wù)器發(fā)出的大量回源請(qǐng)求都會(huì)由該靜態(tài)文件服務(wù)裝置接收并處理,而不會(huì)再被發(fā)到動(dòng)態(tài)接口服務(wù)器上,也即靜態(tài)文件服務(wù)裝置將原本發(fā)到動(dòng)態(tài)接口服務(wù)器的回源請(qǐng)求都聚集到自身進(jìn)行處理,而該靜態(tài)文件服務(wù)裝置只需與動(dòng)態(tài)接口服務(wù)器之間產(chǎn)生少量通信,這樣就將CDN服務(wù)器可能存在的對(duì)動(dòng)態(tài)接口服務(wù)器的大量回源請(qǐng)求(例如通常是全天百萬(wàn)至千萬(wàn)級(jí)訪問(wèn)量,對(duì)應(yīng)可能產(chǎn)生的回源請(qǐng)求會(huì)達(dá)到百萬(wàn)訪問(wèn)量),降低到靜態(tài)文件服務(wù)裝置對(duì)動(dòng)態(tài)接口服務(wù)器的少量請(qǐng)求(例如通常是全天幾萬(wàn)訪問(wèn)量),從而大大減輕了動(dòng)態(tài)接口服務(wù)器上的壓力,避免了回源請(qǐng)求對(duì)線上業(yè)務(wù)長(zhǎng)時(shí)間的持續(xù)影響。
[0045]參見(jiàn)圖4所示,在本實(shí)施例或本發(fā)明其他某些實(shí)施例中,所述生成并存儲(chǔ)所述CDN服務(wù)器所需的靜態(tài)文件,可以包括:
[0046]步驟S401,模擬⑶N服務(wù)器向所述動(dòng)態(tài)接口服務(wù)器發(fā)送對(duì)靜態(tài)文件的請(qǐng)求。
[0047]靜態(tài)文件服務(wù)裝置在發(fā)送對(duì)靜態(tài)文件的請(qǐng)求時(shí),例如可以按時(shí)間進(jìn)行發(fā)送,頻率如幾秒一次、幾分鐘一次、一天一次等,也可以按業(yè)務(wù)需求進(jìn)行發(fā)送。靜態(tài)文件服務(wù)裝置向動(dòng)態(tài)接口服務(wù)器的請(qǐng)求,相比CDN實(shí)時(shí)地直接向動(dòng)態(tài)接口服務(wù)器的請(qǐng)求而言,具有量較少且可控的優(yōu)勢(shì)。
[0048]步驟S402,接收所述動(dòng)態(tài)接口服務(wù)器返回的靜態(tài)數(shù)據(jù)。
[0049]步驟S403,將所述靜態(tài)數(shù)據(jù)以靜態(tài)文件的形式進(jìn)行存儲(chǔ)。
[0050]在現(xiàn)有技術(shù)中,CDN的回源請(qǐng)求將被分配給多臺(tái)動(dòng)態(tài)接口服務(wù)器中的隨機(jī)一臺(tái)進(jìn)行處理。當(dāng)動(dòng)態(tài)接口服務(wù)器升級(jí)時(shí),極有可能對(duì)分配到本機(jī)的靜態(tài)回源請(qǐng)求響應(yīng)錯(cuò)誤數(shù)據(jù),甚至不響應(yīng),于是產(chǎn)生臟數(shù)據(jù),影響正常業(yè)務(wù)。
[0051 ]而在本方案中,通過(guò)設(shè)置靜態(tài)文件服務(wù)裝置,作為靜態(tài)回源請(qǐng)求的統(tǒng)一處理服務(wù)器,返回一致數(shù)據(jù)。同時(shí)進(jìn)一步的,靜態(tài)文件服務(wù)裝置內(nèi)部又可劃分為“靜態(tài)文件生成單元”和“靜態(tài)文件存儲(chǔ)單元”,可參見(jiàn)圖5所示。靜態(tài)文件生成單元用于根據(jù)預(yù)設(shè)規(guī)則生成所述⑶N服務(wù)器所需的靜態(tài)文件。靜態(tài)文件生成單元和靜態(tài)文件存儲(chǔ)單元在業(yè)務(wù)上相互獨(dú)立,互不影響。靜態(tài)文件存儲(chǔ)單元只負(fù)責(zé)讀取靜態(tài)文件,響應(yīng)CDN靜態(tài)回源請(qǐng)求,不去關(guān)心靜態(tài)文件生成單元是否能夠及時(shí)更新數(shù)據(jù);而靜態(tài)文件生成單元只負(fù)責(zé)根據(jù)預(yù)設(shè)規(guī)則,不斷生成靜態(tài)文件,傳送至靜態(tài)文件存儲(chǔ)單元的文件磁盤(pán)上保存下來(lái),而不用關(guān)心其是否能正常響應(yīng)回源請(qǐng)求。
[0052]在本實(shí)施例或本發(fā)明其他某些實(shí)施例中,所述方法還可以包括:
[0053]在所述動(dòng)態(tài)接口服務(wù)器升級(jí)期間,暫停向所述動(dòng)態(tài)接口服務(wù)器發(fā)送對(duì)靜態(tài)文件的請(qǐng)求。
[0054]當(dāng)動(dòng)態(tài)接口服務(wù)器需要升級(jí)時(shí),先暫停靜態(tài)文件生成單元的服務(wù),即暫停向所述動(dòng)態(tài)接口服務(wù)器發(fā)送對(duì)靜態(tài)文件的請(qǐng)求,在動(dòng)態(tài)接口服務(wù)器全面升級(jí)完成后再恢復(fù)靜態(tài)文件生成單元的服務(wù)。而在動(dòng)態(tài)接口服務(wù)器升級(jí)期間,由于靜態(tài)文件生成單元和靜態(tài)文件存儲(chǔ)單元在業(yè)務(wù)上相互獨(dú)立,互不影響,所以靜態(tài)文件存儲(chǔ)單元仍然可以繼續(xù)響應(yīng)CDN回源請(qǐng)求。
[0055]另外,在本實(shí)施例或本發(fā)明其他某些實(shí)施例中,所述靜態(tài)文件服務(wù)裝置還可以包括與所述動(dòng)態(tài)接口服務(wù)器相同的備用服務(wù)器;所述方法還可以包括:
[0056]在所述動(dòng)態(tài)接口服務(wù)器升級(jí)期間,使用所述備用服務(wù)器代替所述動(dòng)態(tài)接口服務(wù)器接收所述向所述動(dòng)態(tài)接口服務(wù)器發(fā)送的對(duì)靜態(tài)文件的請(qǐng)求。
[0057]對(duì)于數(shù)據(jù)更新實(shí)時(shí)性要求高的場(chǎng)景,可以在靜態(tài)文件服務(wù)裝置中添加一臺(tái)或多臺(tái)和線上動(dòng)態(tài)接口服務(wù)器相同的服務(wù)器,作為線上動(dòng)態(tài)接口服務(wù)器升級(jí)時(shí)的備用服務(wù)器,專(zhuān)供靜態(tài)文件生成單元使用,保證持續(xù)更新靜態(tài)文件,作為示例可參見(jiàn)圖6所示。當(dāng)動(dòng)態(tài)接口服務(wù)器需要升級(jí)時(shí),先升級(jí)備用服務(wù)器,然后將靜態(tài)文件生成單元的請(qǐng)求全部轉(zhuǎn)發(fā)到備用服務(wù)器(即使用所述備用服務(wù)器接替了動(dòng)態(tài)接口服務(wù)器),再開(kāi)始全面升級(jí)動(dòng)態(tài)接口服務(wù)器,最后在升級(jí)完成后將以后的請(qǐng)求恢復(fù)發(fā)送到動(dòng)態(tài)接口服務(wù)器上(也即動(dòng)態(tài)接口服務(wù)器接替了備用服務(wù)器),從而實(shí)現(xiàn)線上升級(jí)與數(shù)據(jù)更新的平滑過(guò)渡和服務(wù)的持續(xù)。
[0058]此外,在本實(shí)施例或本發(fā)明其他某些實(shí)施例中,所述方法還可以包括:
[0059]在收到所述CDN服務(wù)器發(fā)來(lái)的對(duì)所述目標(biāo)靜態(tài)文件的請(qǐng)求后,將讀取的所述目標(biāo)靜態(tài)文件推送給其他各CDN服務(wù)器;
[0060]和\或,
[0061]當(dāng)所述靜態(tài)文件服務(wù)裝置存儲(chǔ)的靜態(tài)文件有更新時(shí),將被更新的靜態(tài)文件推送給各CDN服務(wù)器。
[0062]在現(xiàn)有技術(shù)中,CDN服務(wù)器發(fā)出靜態(tài)回源請(qǐng)求并接受到響應(yīng)數(shù)據(jù)后,直接返回給用戶,而不會(huì)在本機(jī)緩存該數(shù)據(jù),所以針對(duì)同一靜態(tài)文件數(shù)據(jù)的請(qǐng)求會(huì)一直以靜態(tài)回源形式發(fā)往動(dòng)態(tài)接口服務(wù)器,對(duì)其造成持續(xù)壓力,浪費(fèi)了大量資源。而在本方案中,可以為靜態(tài)文件服務(wù)裝置添加數(shù)據(jù)主動(dòng)推送CDN的服務(wù),在收到所述CDN服務(wù)器發(fā)來(lái)的對(duì)靜態(tài)文件的請(qǐng)求后,將所請(qǐng)求的靜態(tài)文件主動(dòng)推送給其他各CDN服務(wù)器,和\或,當(dāng)所述靜態(tài)文件服務(wù)裝置存儲(chǔ)的靜態(tài)文件有更新時(shí),將被更新的靜態(tài)文件推送給各CDN服務(wù)器。作為示例可參見(jiàn)圖7所不O
[0063]這樣各CDN讀取到本地靜態(tài)文件后,就不再發(fā)出靜態(tài)回源請(qǐng)求,減少既有靜態(tài)回源請(qǐng)求的持續(xù)時(shí)間,減少服務(wù)器壓力。同時(shí),通過(guò)數(shù)據(jù)主動(dòng)推動(dòng),可以在新業(yè)務(wù)上線之前,提前部署靜態(tài)文件數(shù)據(jù),降低靜態(tài)回源發(fā)生的幾率,提升系統(tǒng)的可用性。
[0064]下述為本發(fā)明裝置實(shí)施例,可以用于執(zhí)行本發(fā)明方法實(shí)施例。對(duì)于本發(fā)明裝置實(shí)施例中未披露的細(xì)節(jié),請(qǐng)參照本發(fā)明方法實(shí)施例。
[0065]圖8是根據(jù)一示例性實(shí)施例示出的一種靜態(tài)文件服務(wù)裝置的示意圖。該裝置即圖中的裝置800ο該裝置位于CDN內(nèi)容分發(fā)網(wǎng)絡(luò)服務(wù)器與動(dòng)態(tài)接口服務(wù)器之間,包括:
[0066]靜態(tài)文件生成單元801,用于生成所述⑶N服務(wù)器所需的靜態(tài)文件;
[0067]靜態(tài)文件存儲(chǔ)單元802,用于存儲(chǔ)所述靜態(tài)文件生成單元所生成的靜態(tài)文件,接收所述CDN服務(wù)器發(fā)來(lái)的對(duì)目標(biāo)靜態(tài)文件的請(qǐng)求,從所存儲(chǔ)的靜態(tài)文件中讀取所述目標(biāo)靜態(tài)文件;將讀取的所述目標(biāo)靜態(tài)文件發(fā)送給所述CDN服務(wù)器。
[0068]參見(jiàn)圖9所示,在本實(shí)施例或本發(fā)明其他某些實(shí)施例中,所述靜態(tài)文件生成單元801可以包括:
[0069]模擬發(fā)送子單元8011,用于模擬CDN服務(wù)器向所述動(dòng)態(tài)接口服務(wù)器發(fā)送對(duì)靜態(tài)文件的請(qǐng)求;
[0070]數(shù)據(jù)接收子單元8012,用于接收所述動(dòng)態(tài)接口服務(wù)器返回的靜態(tài)數(shù)據(jù);
[0071]文件存儲(chǔ)子單元8013,用于將所述靜態(tài)數(shù)據(jù)以靜態(tài)文件的形式存儲(chǔ)在所述靜態(tài)文件存儲(chǔ)單元。
[0072]在本實(shí)施例或本發(fā)明其他某些實(shí)施例中,在所述動(dòng)態(tài)接口服務(wù)器升級(jí)期間,所述靜態(tài)文件生成單元暫停向所述動(dòng)態(tài)接口服務(wù)器發(fā)送對(duì)靜態(tài)文件的請(qǐng)求。
[0073]參見(jiàn)圖10所示,在本實(shí)施例或本發(fā)明其他某些實(shí)施例中,所述裝置還可以包括:
[0074]備用服務(wù)器803,所述備用服務(wù)器803與所述動(dòng)態(tài)接口服務(wù)器相同,用于在所述動(dòng)態(tài)接口服務(wù)器升級(jí)期間代替所述動(dòng)態(tài)接口服務(wù)器接收所述靜態(tài)文件生成單元的對(duì)靜態(tài)文件的請(qǐng)求。
[0075]參見(jiàn)圖11所示,在本實(shí)施例或本發(fā)明其他某些實(shí)施例中,所述裝置還可以包括:
[0076]主動(dòng)推送單元804,用于在收到所述⑶N服務(wù)器發(fā)來(lái)的對(duì)所述目標(biāo)靜態(tài)文件的請(qǐng)求后,將讀取的所述目標(biāo)靜態(tài)文件推送給其他各CDN服務(wù)器,和\或,當(dāng)所述靜態(tài)存儲(chǔ)單元中的靜態(tài)文件有更新時(shí),將被更新的靜態(tài)文件推送給各CDN服務(wù)器。
[0077]關(guān)于上述實(shí)施例中的裝置,其中各個(gè)單元執(zhí)行操作的具體方式已經(jīng)在有關(guān)該方法的實(shí)施例中進(jìn)行了詳細(xì)描述,此處將不做詳細(xì)闡述說(shuō)明。
[0078]本領(lǐng)域技術(shù)人員在考慮說(shuō)明書(shū)及實(shí)踐這里公開(kāi)的發(fā)明后,將容易想到本發(fā)明的其它實(shí)施方案。本申請(qǐng)旨在涵蓋本發(fā)明的任何變型、用途或者適應(yīng)性變化,這些變型、用途或者適應(yīng)性變化遵循本發(fā)明的一般性原理并包括本發(fā)明未公開(kāi)的本技術(shù)領(lǐng)域中的公知常識(shí)或慣用技術(shù)手段。說(shuō)明書(shū)和實(shí)施例僅被視為示例性的,本發(fā)明的真正范圍和精神由所附的權(quán)利要求指出。
[0079]應(yīng)當(dāng)理解的是,本發(fā)明并不局限于上面已經(jīng)描述并在附圖中示出的精確結(jié)構(gòu),并且可以在不脫離其范圍進(jìn)行各種修改和改變。本發(fā)明的范圍僅由所附的權(quán)利要求來(lái)限制。
【主權(quán)項(xiàng)】
1.一種靜態(tài)文件服務(wù)方法,其特征在于,所述方法用于靜態(tài)文件服務(wù)裝置,所述靜態(tài)文件服務(wù)裝置位于內(nèi)容分發(fā)網(wǎng)絡(luò)CDN服務(wù)器與動(dòng)態(tài)接口服務(wù)器之間;所述方法包括: 生成并存儲(chǔ)所述CDN服務(wù)器所需的靜態(tài)文件; 接收所述CDN服務(wù)器發(fā)來(lái)的對(duì)目標(biāo)靜態(tài)文件的請(qǐng)求; 從所存儲(chǔ)的靜態(tài)文件中讀取所述目標(biāo)靜態(tài)文件; 將讀取的所述目標(biāo)靜態(tài)文件發(fā)送給所述CDN服務(wù)器。2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述根據(jù)預(yù)設(shè)規(guī)則生成并存儲(chǔ)所述CDN月艮務(wù)器所需的靜態(tài)文件包括: 模擬CDN服務(wù)器向所述動(dòng)態(tài)接口服務(wù)器發(fā)送對(duì)靜態(tài)文件的請(qǐng)求; 接收所述動(dòng)態(tài)接口服務(wù)器返回的靜態(tài)數(shù)據(jù); 將所述靜態(tài)數(shù)據(jù)以靜態(tài)文件的形式進(jìn)行存儲(chǔ)。3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述方法還包括: 在所述動(dòng)態(tài)接口服務(wù)器升級(jí)期間,暫停向所述動(dòng)態(tài)接口服務(wù)器發(fā)送對(duì)靜態(tài)文件的請(qǐng)求。4.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述靜態(tài)文件服務(wù)裝置還包括與所述動(dòng)態(tài)接口服務(wù)器相同的備用服務(wù)器; 所述方法還包括: 在所述動(dòng)態(tài)接口服務(wù)器升級(jí)期間,使用所述備用服務(wù)器代替所述動(dòng)態(tài)接口服務(wù)器接收所述向所述動(dòng)態(tài)接口服務(wù)器發(fā)送的對(duì)靜態(tài)文件的請(qǐng)求。5.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述方法還包括: 在收到所述CDN服務(wù)器發(fā)來(lái)的對(duì)所述目標(biāo)靜態(tài)文件的請(qǐng)求后,將讀取的所述目標(biāo)靜態(tài)文件推送給其他各CDN服務(wù)器; 和\或, 當(dāng)所述靜態(tài)文件服務(wù)裝置存儲(chǔ)的靜態(tài)文件有更新時(shí),將被更新的靜態(tài)文件推送給各CDN服務(wù)器。6.一種靜態(tài)文件服務(wù)裝置,其特征在于,所述裝置位于內(nèi)容分發(fā)網(wǎng)絡(luò)CDN服務(wù)器與動(dòng)態(tài)接口服務(wù)器之間;所述裝置包括: 靜態(tài)文件生成單元,用于生成所述CDN服務(wù)器所需的靜態(tài)文件; 靜態(tài)文件存儲(chǔ)單元,用于存儲(chǔ)所述靜態(tài)文件生成單元所生成的靜態(tài)文件,接收所述CDN服務(wù)器發(fā)來(lái)的對(duì)目標(biāo)靜態(tài)文件的請(qǐng)求,從所存儲(chǔ)的靜態(tài)文件中讀取所述目標(biāo)靜態(tài)文件,將讀取的所述目標(biāo)靜態(tài)文件發(fā)送給所述CDN服務(wù)器。7.根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述靜態(tài)文件生成單元包括: 模擬發(fā)送子單元,用于模擬CDN服務(wù)器向所述動(dòng)態(tài)接口服務(wù)器發(fā)送對(duì)靜態(tài)文件的請(qǐng)求; 數(shù)據(jù)接收子單元,用于接收所述動(dòng)態(tài)接口服務(wù)器返回的靜態(tài)數(shù)據(jù); 文件存儲(chǔ)子單元,用于將所述靜態(tài)數(shù)據(jù)以靜態(tài)文件的形式存儲(chǔ)在所述靜態(tài)文件存儲(chǔ)單J L ο8.根據(jù)權(quán)利要求7所述的裝置,其特征在于,在所述動(dòng)態(tài)接口服務(wù)器升級(jí)期間,所述靜態(tài)文件生成單元暫停向所述動(dòng)態(tài)接口服務(wù)器發(fā)送對(duì)靜態(tài)文件的請(qǐng)求。9.根據(jù)權(quán)利要求7所述的裝置,其特征在于,所述裝置還包括: 備用服務(wù)器,所述備用服務(wù)器與所述動(dòng)態(tài)接口服務(wù)器相同,用于在所述動(dòng)態(tài)接口服務(wù)器升級(jí)期間代替所述動(dòng)態(tài)接口服務(wù)器接收所述靜態(tài)文件生成單元的對(duì)靜態(tài)文件的請(qǐng)求。10.根據(jù)權(quán)利要求6所述的裝置,其特征在于,所述裝置還包括: 主動(dòng)推送單元,用于在收到所述CDN服務(wù)器發(fā)來(lái)的對(duì)所述目標(biāo)靜態(tài)文件的請(qǐng)求后,將讀取的所述靜態(tài)文件推送給其他各CDN服務(wù)器,和\或,當(dāng)所述靜態(tài)存儲(chǔ)單元中的靜態(tài)文件有更新時(shí),將被更新的靜態(tài)文件推送給各CDN服務(wù)器。
【文檔編號(hào)】H04L29/08GK105871994SQ201510933373
【公開(kāi)日】2016年8月17日
【申請(qǐng)日】2015年12月15日
【發(fā)明人】易坤
【申請(qǐng)人】樂(lè)視網(wǎng)信息技術(shù)(北京)股份有限公司