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

對(duì)分片請(qǐng)求進(jìn)行定長(zhǎng)對(duì)齊的緩存方法、系統(tǒng)及裝置制造方法

文檔序號(hào):7979645閱讀:245來(lái)源:國(guó)知局
對(duì)分片請(qǐng)求進(jìn)行定長(zhǎng)對(duì)齊的緩存方法、系統(tǒng)及裝置制造方法
【專(zhuān)利摘要】本發(fā)明提出一種對(duì)分片請(qǐng)求進(jìn)行定長(zhǎng)對(duì)齊的緩存方法、系統(tǒng)和裝置。其中方法包括以下步驟:接收具有第一播放范圍的第一用戶(hù)請(qǐng)求,并根據(jù)所述第一播放范圍將所述第一用戶(hù)請(qǐng)求切分為多個(gè)第一用戶(hù)子請(qǐng)求,其中,每個(gè)所述第一用戶(hù)子請(qǐng)求具有相同長(zhǎng)度的播放范圍且所述多個(gè)第一用戶(hù)子請(qǐng)求之間相互對(duì)齊;分別將所述多個(gè)第一用戶(hù)子請(qǐng)求發(fā)送至源站進(jìn)行回源操作,并接收所述源站返回的多個(gè)分段;以及將所述多個(gè)分段中的每個(gè)分段作為單獨(dú)對(duì)象存儲(chǔ)至緩存中,每個(gè)所述單獨(dú)對(duì)象具有對(duì)應(yīng)的播放范圍。本發(fā)明將分片的請(qǐng)求轉(zhuǎn)換成為定長(zhǎng)對(duì)齊的對(duì)象片段,然后將每個(gè)片段看作一個(gè)獨(dú)立對(duì)象再進(jìn)行回源和緩存的存取,既節(jié)約了帶寬,又避免了拼接分段的復(fù)雜度。
【專(zhuān)利說(shuō)明】對(duì)分片請(qǐng)求進(jìn)行定長(zhǎng)對(duì)齊的緩存方法、系統(tǒng)及裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及互聯(lián)網(wǎng)【技術(shù)領(lǐng)域】,尤其涉及一種對(duì)分片請(qǐng)求進(jìn)行定長(zhǎng)對(duì)齊的緩存方法、系統(tǒng)及裝置。
【背景技術(shù)】
[0002]對(duì)于作為緩存功能的http服務(wù)器代理而言(典型應(yīng)用如CDN),對(duì)緩存不命中的對(duì)象,需要回源站取。
[0003]具體地,現(xiàn)有的http代理對(duì)帶播放范圍的分片請(qǐng)求的處理方式有以下兩種:
[0004]1、回源時(shí),讀取整個(gè)對(duì)象,并將整個(gè)對(duì)象存到緩存中,即整存整取。這種方式的問(wèn)題是,如果每個(gè)分片的大小相對(duì)于整個(gè)對(duì)象的比例很小,而且分片較多,那么會(huì)造成大量的帶寬浪費(fèi)。而且如果用戶(hù)請(qǐng)求的播放范圍在對(duì)象的靠后位置,那么也會(huì)影響用戶(hù)響應(yīng)時(shí)間。針對(duì)上述問(wèn)題,現(xiàn)有的解決方案是在每次源上有新對(duì)象時(shí),手動(dòng)請(qǐng)求代理服務(wù)器,把整個(gè)對(duì)象從源服務(wù)器填充到代理服務(wù)器中,但是這樣會(huì)增大人工成本,增加代理服務(wù)器的邏輯。
[0005]2、回源時(shí),轉(zhuǎn)發(fā)用戶(hù)的具有播放范圍的請(qǐng)求,僅請(qǐng)求用戶(hù)請(qǐng)求的片段,然后在本地對(duì)片段進(jìn)行拼接。這種方式的問(wèn)題是,要求代理的緩存系統(tǒng)支持分片存儲(chǔ)的功能,同時(shí)要求代理的緩存系統(tǒng)對(duì)分片進(jìn)行拼接,復(fù)雜度高。

【發(fā)明內(nèi)容】

[0006]本發(fā)明旨在至少解決上述技術(shù)問(wèn)題之一。
[0007]為此,本發(fā)明的一個(gè)目的在于提出一種能夠節(jié)約帶寬同時(shí)避免拼接分片的復(fù)雜度的對(duì)分片請(qǐng)求進(jìn)行定長(zhǎng)對(duì)齊的緩存方法。
[0008]本發(fā)明的另一目的在于提出一種對(duì)分片請(qǐng)求進(jìn)行定長(zhǎng)對(duì)齊的緩存系統(tǒng)。
[0009]本發(fā)明的再一個(gè)目的在于提出一種HTTP服務(wù)器。
[0010]為了實(shí)現(xiàn)上述目的,根據(jù)本發(fā)明的第一方面實(shí)施例的對(duì)分片請(qǐng)求進(jìn)行定長(zhǎng)對(duì)齊的緩存方法,包括以下步驟:接收具有第一播放范圍的第一用戶(hù)請(qǐng)求,并根據(jù)所述第一播放范圍將所述第一用戶(hù)請(qǐng)求切分為多個(gè)第一用戶(hù)子請(qǐng)求,其中,每個(gè)所述第一用戶(hù)子請(qǐng)求具有相同長(zhǎng)度的播放范圍且所述多個(gè)第一用戶(hù)子請(qǐng)求之間相互對(duì)齊;分別將所述多個(gè)第一用戶(hù)子請(qǐng)求發(fā)送至源站進(jìn)行回源操作,并接收所述源站返回的多個(gè)分段;以及將所述多個(gè)分段中的每個(gè)分段作為單獨(dú)對(duì)象存儲(chǔ)至緩存中,每個(gè)所述單獨(dú)對(duì)象具有對(duì)應(yīng)的播放范圍。
[0011]根據(jù)本發(fā)明實(shí)施例的對(duì)分片請(qǐng)求進(jìn)行定長(zhǎng)對(duì)齊的緩存方法,將分片的請(qǐng)求轉(zhuǎn)換成為定長(zhǎng)對(duì)齊的對(duì)象片段,然后將每個(gè)片段看作一個(gè)獨(dú)立對(duì)象再進(jìn)行回源和緩存的存取,既節(jié)約了帶寬,又避免了拼接分段的復(fù)雜度。
[0012]為了實(shí)現(xiàn)上述目的,根據(jù)本發(fā)明的第二方面實(shí)施例的對(duì)分片請(qǐng)求進(jìn)行定長(zhǎng)對(duì)齊的緩存系統(tǒng),包括:源站;HTTP服務(wù)器,所述HTTP服務(wù)器具有緩存功能,用于接收具有第一播放范圍的第一用戶(hù)請(qǐng)求,并根據(jù)所述第一播放范圍將所述第一用戶(hù)請(qǐng)求切分為多個(gè)第一用戶(hù)子請(qǐng)求,其中,每個(gè)所述第一用戶(hù)子請(qǐng)求具有相同長(zhǎng)度的播放范圍且所述多個(gè)第一用戶(hù)子請(qǐng)求之間相互對(duì)齊,以及分別將所述多個(gè)第一用戶(hù)子請(qǐng)求發(fā)送至所述源站進(jìn)行回源操作,并接收所述源站返回的多個(gè)分段,和將所述多個(gè)分段中的每個(gè)分段作為單獨(dú)對(duì)象存儲(chǔ)至所述緩存中,其中,每個(gè)所述單獨(dú)對(duì)象具有對(duì)應(yīng)的播放范圍。
[0013]根據(jù)本發(fā)明實(shí)施例的對(duì)分片請(qǐng)求進(jìn)行定長(zhǎng)對(duì)齊的緩存系統(tǒng),將分片的請(qǐng)求轉(zhuǎn)換成為定長(zhǎng)對(duì)齊的對(duì)象片段,然后將每個(gè)片段看作一個(gè)獨(dú)立對(duì)象再進(jìn)行回源和緩存的存取,既節(jié)約了帶寬,又避免了拼接分段的復(fù)雜度。
[0014]為了實(shí)現(xiàn)上述目的,根據(jù)本發(fā)明的第三方面實(shí)施例的HTTP服務(wù)器,包括:接收模塊,用于接收具有第一播放范圍的第一用戶(hù)請(qǐng)求;切分模塊,用于根據(jù)所述第一播放范圍將所述第一用戶(hù)請(qǐng)求切分為多個(gè)第一用戶(hù)子請(qǐng)求,其中,每個(gè)所述第一用戶(hù)子請(qǐng)求具有相同長(zhǎng)度的播放范圍且所述多個(gè)第一用戶(hù)子請(qǐng)求之間相互對(duì)齊;回源模塊,用于分別將所述多個(gè)第一用戶(hù)子請(qǐng)求發(fā)送至源站進(jìn)行回源操作,并接收所述源站返回的多個(gè)分段;以及緩存模塊,用于將所述多個(gè)分段中的每個(gè)分段作為單獨(dú)對(duì)象存儲(chǔ)至緩存中,每個(gè)所述單獨(dú)對(duì)象具有對(duì)應(yīng)的播放范圍。
[0015]根據(jù)本發(fā)明實(shí)施例的HTTP服務(wù)器,將分片的請(qǐng)求轉(zhuǎn)換成為定長(zhǎng)對(duì)齊的對(duì)象片段,然后將每個(gè)片段看作一個(gè)獨(dú)立對(duì)象再進(jìn)行回源和緩存的存取,既節(jié)約了帶寬,又避免了拼接分段的復(fù)雜度。
[0016]本發(fā)明附加的方面和優(yōu)點(diǎn)將在下面的描述中部分給出,部分將從下面的描述中變得明顯,或通過(guò)本發(fā)明的實(shí)踐了解到。
【專(zhuān)利附圖】

【附圖說(shuō)明】
[0017]本發(fā)明上述的和/或附加的方面和優(yōu)點(diǎn)從下面結(jié)合附圖對(duì)實(shí)施例的描述中將變得明顯和容易理解,其中,
[0018]圖1是根據(jù)本發(fā)明一個(gè)實(shí)施例的對(duì)分片請(qǐng)求進(jìn)行定長(zhǎng)對(duì)齊的緩存方法的流程圖;
[0019]圖2是根據(jù)本發(fā)明一個(gè)實(shí)施例的對(duì)分片請(qǐng)求進(jìn)行定長(zhǎng)對(duì)齊的緩存方法的流程圖;
[0020]圖3是根據(jù)本發(fā)明一個(gè)實(shí)施例的對(duì)分片請(qǐng)求進(jìn)行定長(zhǎng)對(duì)齊的緩存方法的流程圖;
[0021]圖4是根據(jù)本發(fā)明一個(gè)實(shí)施例的對(duì)分片請(qǐng)求進(jìn)行定長(zhǎng)對(duì)齊的緩存系統(tǒng)的結(jié)構(gòu)示意圖;
[0022]圖5是根據(jù)本發(fā)明一個(gè)實(shí)施例的HTTP服務(wù)器的結(jié)構(gòu)示意圖;
[0023]圖6是根據(jù)本發(fā)明一個(gè)實(shí)施例的HTTP服務(wù)器的結(jié)構(gòu)示意圖;以及
[0024]圖7是根據(jù)本發(fā)明一個(gè)實(shí)施例的HTTP服務(wù)器的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0025]下面詳細(xì)描述本發(fā)明的實(shí)施例,所述實(shí)施例的示例在附圖中示出,其中自始至終相同或類(lèi)似的標(biāo)號(hào)表示相同或類(lèi)似的元件或具有相同或類(lèi)似功能的元件。下面通過(guò)參考附圖描述的實(shí)施例是示例性的,僅用于解釋本發(fā)明,而不能理解為對(duì)本發(fā)明的限制。相反,本發(fā)明的實(shí)施例包括落入所附加權(quán)利要求書(shū)的精神和內(nèi)涵范圍內(nèi)的所有變化、修改和等同物。
[0026]在本發(fā)明的描述中,需要理解的是,術(shù)語(yǔ)“第一”、“第二”等僅用于描述目的,而不能理解為指示或暗示相對(duì)重要性。在本發(fā)明的描述中,需要說(shuō)明的是,除非另有明確的規(guī)定和限定,術(shù)語(yǔ)“相連”、“連接”應(yīng)做廣義理解,例如,可以是固定連接,也可以是可拆卸連接,或一體地連接;可以是機(jī)械連接,也可以是電連接;可以是直接相連,也可以通過(guò)中間媒介間接相連。對(duì)于本領(lǐng)域的普通技術(shù)人員而言,可以具體情況理解上述術(shù)語(yǔ)在本發(fā)明中的具體含義。此外,在本發(fā)明的描述中,除非另有說(shuō)明,“多個(gè)”的含義是兩個(gè)或兩個(gè)以上。
[0027]流程圖中或在此以其他方式描述的任何過(guò)程或方法描述可以被理解為,表示包括一個(gè)或更多個(gè)用于實(shí)現(xiàn)特定邏輯功能或過(guò)程的步驟的可執(zhí)行指令的代碼的模塊、片段或部分,并且本發(fā)明的優(yōu)選實(shí)施方式的范圍包括另外的實(shí)現(xiàn),其中可以不按所示出或討論的順序,包括根據(jù)所涉及的功能按基本同時(shí)的方式或按相反的順序,來(lái)執(zhí)行功能,這應(yīng)被本發(fā)明的實(shí)施例所屬【技術(shù)領(lǐng)域】的技術(shù)人員所理解。
[0028]下面參考附圖描述根據(jù)本發(fā)明實(shí)施例的報(bào)文過(guò)濾/限速方法。
[0029]一種對(duì)分片請(qǐng)求進(jìn)行定長(zhǎng)對(duì)齊的緩存方法,包括以下步驟:接收具有第一播放范圍的第一用戶(hù)請(qǐng)求,并根據(jù)第一播放范圍將第一用戶(hù)請(qǐng)求切分為多個(gè)第一用戶(hù)子請(qǐng)求,其中,每個(gè)第一用戶(hù)子請(qǐng)求具有相同長(zhǎng)度的播放范圍且多個(gè)第一用戶(hù)子請(qǐng)求之間相互對(duì)齊;分別將多個(gè)第一用戶(hù)子請(qǐng)求發(fā)送至源站進(jìn)行回源操作,并接收源站返回的多個(gè)分段;以及將多個(gè)分段中的每個(gè)分片作為單獨(dú)對(duì)象存儲(chǔ)至緩存中,每個(gè)單獨(dú)對(duì)象具有對(duì)應(yīng)的播放范圍。
[0030]圖1是根據(jù)本發(fā)明一個(gè)實(shí)施例的對(duì)分片請(qǐng)求進(jìn)行定長(zhǎng)對(duì)齊的緩存方法的流程圖。
[0031]如圖1所示,根據(jù)本發(fā)明實(shí)施例的對(duì)分片請(qǐng)求進(jìn)行定長(zhǎng)對(duì)齊的緩存方法包括下述步驟。
[0032]步驟S 101,接收具有第一播放范圍的第一用戶(hù)請(qǐng)求,并根據(jù)第一播放范圍將第一用戶(hù)請(qǐng)求切分為多個(gè)第一用戶(hù)子請(qǐng)求,其中,每個(gè)第一用戶(hù)子請(qǐng)求具有相同長(zhǎng)度的播放范圍且多個(gè)第一用戶(hù)子請(qǐng)求之間相互對(duì)齊。
[0033]具體地,多個(gè)用戶(hù)子請(qǐng)求之間相互對(duì)齊指的是,每個(gè)用戶(hù)子請(qǐng)求都是從O、100、200等類(lèi)似固定的點(diǎn)開(kāi)始。
[0034]此外,HTTP協(xié)議的播放范圍的格式有三種:一種是包括起始字節(jié)和結(jié)束字節(jié);一種是包括起始字節(jié)和播放范圍的總長(zhǎng)度;另一種是起始字節(jié)和結(jié)束字節(jié)均不知道。
[0035]因此,在本發(fā)明的一個(gè)實(shí)施例中,對(duì)于包括起始字節(jié)和結(jié)束字節(jié)的播放范圍請(qǐng)求,可根據(jù)用戶(hù)子請(qǐng)求中播放范圍的長(zhǎng)度、起始字節(jié)和結(jié)束字節(jié)對(duì)用戶(hù)請(qǐng)求進(jìn)行劃分。例如,假設(shè)定長(zhǎng)分段長(zhǎng)度(用戶(hù)子請(qǐng)求中播放范圍的長(zhǎng)度)為100,用戶(hù)一次請(qǐng)求的播放范圍是50-350,那么此次用戶(hù)請(qǐng)求會(huì)被切分成0-99,100-199, 200-299, 300-399四個(gè)用戶(hù)子請(qǐng)求。
[0036]在本發(fā)明的另一個(gè)實(shí)施例中,對(duì)于包括起始字節(jié)和播放范圍總長(zhǎng)度的播放范圍請(qǐng)求,可根據(jù)播放范圍的總長(zhǎng)度和起始字節(jié)對(duì)用戶(hù)請(qǐng)求進(jìn)行劃分。具體地,首先根據(jù)起始字節(jié)可以構(gòu)造出第一個(gè)子請(qǐng)求;根據(jù)HTTP協(xié)議,根據(jù)第一子請(qǐng)求返回的響應(yīng)頭中會(huì)包含Content-Length頭,標(biāo)明此對(duì)象的總長(zhǎng)度,據(jù)此就可以得到用戶(hù)請(qǐng)求的結(jié)束字節(jié),然后構(gòu)造后續(xù)子請(qǐng)求。
[0037]在本發(fā)明的又一個(gè)實(shí)施例中,對(duì)于起始字節(jié)和結(jié)束字節(jié)均不知道的情況,由于無(wú)法構(gòu)造出第一個(gè)子請(qǐng)求,因此可以首先發(fā)出一個(gè)頭請(qǐng)求,以從源獲得對(duì)象總長(zhǎng)度,然后計(jì)算用戶(hù)請(qǐng)求分片位置。但是,由于部分源服務(wù)器不支持頭請(qǐng)求,因此在本發(fā)明的一個(gè)實(shí)施例中是發(fā)出一個(gè)只請(qǐng)求第一字節(jié)的播放范圍請(qǐng)求,進(jìn)而獲得對(duì)象總長(zhǎng)度,然后計(jì)算用戶(hù)請(qǐng)求分片位置。由于只請(qǐng)求第一字節(jié),所以浪費(fèi)的流量可以忽略。
[0038]步驟S 102,分別將多個(gè)第一用戶(hù)子請(qǐng)求發(fā)送至源站進(jìn)行回源操作,并接收源站返回的多個(gè)分段。
[0039]由于將一個(gè)用戶(hù)請(qǐng)求拆分為多個(gè)子請(qǐng)求,這些子請(qǐng)求間的時(shí)間間隔會(huì)增大用戶(hù)接收響應(yīng)的延時(shí)。因此,在本發(fā)明的一個(gè)實(shí)施例中,可以一次并行發(fā)送多個(gè)第一用戶(hù)子請(qǐng)求,實(shí)現(xiàn)加速。
[0040]步驟S103,將多個(gè)分段中的每個(gè)分段作為單獨(dú)對(duì)象存儲(chǔ)至緩存中,每個(gè)單獨(dú)對(duì)象具有對(duì)應(yīng)的播放范圍。
[0041]根據(jù)本發(fā)明實(shí)施例的對(duì)分片請(qǐng)求進(jìn)行定長(zhǎng)對(duì)齊的緩存方法,將分片的請(qǐng)求轉(zhuǎn)換成為定長(zhǎng)對(duì)齊的對(duì)象片段,然后將每個(gè)片段看作一個(gè)獨(dú)立對(duì)象再進(jìn)行回源和緩存的存取,既節(jié)約了帶寬,又避免了拼接分段的復(fù)雜度。
[0042]圖2是根據(jù)本發(fā)明一個(gè)實(shí)施例的對(duì)分片請(qǐng)求進(jìn)行定長(zhǎng)對(duì)齊的緩存方法的流程圖。
[0043]如圖2所示,根據(jù)本發(fā)明實(shí)施例的對(duì)分片請(qǐng)求進(jìn)行定長(zhǎng)對(duì)齊的緩存方法包括下述步驟。
[0044]步驟S201,接收具有第一播放范圍的第一用戶(hù)請(qǐng)求,并根據(jù)第一播放范圍將第一用戶(hù)請(qǐng)求切分為多個(gè)第一用戶(hù)子請(qǐng)求,其中,每個(gè)第一用戶(hù)子請(qǐng)求具有相同長(zhǎng)度的播放范圍且多個(gè)第一用戶(hù)子請(qǐng)求之間相互對(duì)齊。
[0045]步驟S202,分別將多個(gè)第一用戶(hù)子請(qǐng)求發(fā)送至源站進(jìn)行回源操作,并接收源站返回的多個(gè)分段。
[0046]步驟S203,將多個(gè)分段中的每個(gè)分段作為單獨(dú)對(duì)象存儲(chǔ)至緩存中,每個(gè)單獨(dú)對(duì)象具有對(duì)應(yīng)的播放范圍。
[0047]步驟S204,接收具有第二播放范圍的第二用戶(hù)請(qǐng)求,并根據(jù)第二播放范圍將第二用戶(hù)請(qǐng)求切分為多個(gè)第二用戶(hù)子請(qǐng)求,其中,每個(gè)第二用戶(hù)子請(qǐng)求具有相同長(zhǎng)度的播放范圍且多個(gè)第二用戶(hù)子請(qǐng)求之間相互對(duì)齊。
[0048]步驟S204的具體實(shí)現(xiàn)過(guò)程可與步驟S201相同,此處不再詳細(xì)描述。
[0049]步驟S205,判斷多個(gè)第二用戶(hù)子請(qǐng)求中是否有播放范圍與緩存中保存的單獨(dú)對(duì)象的播放范圍相同的第二用戶(hù)子請(qǐng)求。
[0050]步驟S206,如果有播放范圍相同的第二用戶(hù)子請(qǐng)求,則從緩存中獲得與播放范圍相同的第二用戶(hù)子請(qǐng)求所對(duì)應(yīng)的單獨(dú)對(duì)象。
[0051]如果沒(méi)有播放范圍相同的第二用戶(hù)子請(qǐng)求,則執(zhí)行與步驟S202類(lèi)似的操作,也就是分別將多個(gè)第二用戶(hù)子請(qǐng)求發(fā)送至源站進(jìn)行回源操作,并接受源站返回的多個(gè)分段,然后將多個(gè)分段中的每個(gè)分段作為單獨(dú)對(duì)象存儲(chǔ)至緩存中。
[0052]例如,假設(shè)配置定長(zhǎng)分段長(zhǎng)度為100,用戶(hù)第一次請(qǐng)求的播放范圍是50-350,那么此第一用戶(hù)請(qǐng)求會(huì)被切分為0-99、100-199、200-299、300-399四個(gè)第一用戶(hù)子請(qǐng)求,分別回源,并將取回的四個(gè)分段作為四個(gè)單獨(dú)對(duì)象存儲(chǔ)在緩存中。如果再有請(qǐng)求的播放范圍是310-410,那么該第二用戶(hù)請(qǐng)求會(huì)被拆分為300-399和400-499兩個(gè)第二用戶(hù)子請(qǐng)求。由于第一個(gè)第二用戶(hù)子請(qǐng)求對(duì)應(yīng)的分段已經(jīng)存儲(chǔ)在緩存中,所以緩存命中;第二個(gè)第二用戶(hù)子請(qǐng)求對(duì)應(yīng)的分段則需要回源取回并存到緩存中。
[0053]應(yīng)理解,同樣地,多個(gè)第二用戶(hù)子請(qǐng)求也可并行發(fā)送,實(shí)現(xiàn)加速。[0054]根據(jù)本發(fā)明實(shí)施例的對(duì)分片請(qǐng)求進(jìn)行定長(zhǎng)對(duì)齊的緩存方法,通過(guò)從緩存中直接獲取播放范圍與第二用戶(hù)子請(qǐng)求的播放范圍相同的單獨(dú)對(duì)象,節(jié)省大量的流量。
[0055]圖3為本發(fā)明一個(gè)實(shí)施例的對(duì)分片請(qǐng)求進(jìn)行定長(zhǎng)對(duì)齊的緩存方法的流程圖。
[0056]如圖3所示,根據(jù)本發(fā)明實(shí)施例的對(duì)分片請(qǐng)求進(jìn)行定長(zhǎng)對(duì)齊的緩存方法包括下述步驟。
[0057]步驟S301,接收具有第一播放范圍的第一用戶(hù)請(qǐng)求,并根據(jù)第一播放范圍將第一用戶(hù)請(qǐng)求切分為多個(gè)第一用戶(hù)子請(qǐng)求,其中,每個(gè)第一用戶(hù)子請(qǐng)求具有相同長(zhǎng)度的播放范圍且多個(gè)第一用戶(hù)子請(qǐng)求之間相互對(duì)齊。
[0058]步驟S302,分別將多個(gè)第一用戶(hù)子請(qǐng)求發(fā)送至源站進(jìn)行回源操作,并接收源站返回的多個(gè)分段。
[0059]步驟S303,將多個(gè)分段中的每個(gè)分段作為單獨(dú)對(duì)象存儲(chǔ)至緩存中,每個(gè)單獨(dú)對(duì)象具有對(duì)應(yīng)的播放范圍。
[0060]步驟S304,接收具有第二播放范圍的第二用戶(hù)請(qǐng)求,并根據(jù)第二播放范圍將第二用戶(hù)請(qǐng)求切分為多個(gè)第二用戶(hù)子請(qǐng)求,其中,每個(gè)第二用戶(hù)子請(qǐng)求具有相同長(zhǎng)度的播放范圍且多個(gè)第二用戶(hù)子請(qǐng)求之間相互對(duì)齊。
[0061]步驟S305,判斷多個(gè)第二用戶(hù)子請(qǐng)求中是否有播放范圍與緩存中保存的單獨(dú)對(duì)象的播放范圍相同的第二用戶(hù)子請(qǐng)求。
[0062]步驟S306,如果有播放范圍相同的第二用戶(hù)子請(qǐng)求,則從緩存中獲得與播放范圍相同的第二用戶(hù)子請(qǐng)求所對(duì)應(yīng)的單獨(dú)對(duì)象。
[0063]步驟S307,在處理完第一和第二用戶(hù)請(qǐng)求所屬用戶(hù)的全部用戶(hù)請(qǐng)求之后,釋放多個(gè)第一和第二用戶(hù)子請(qǐng)求所占用的資源。
[0064]為了實(shí)現(xiàn)簡(jiǎn)單,在本發(fā)明的實(shí)施例中,子請(qǐng)求在結(jié)束后并不會(huì)立即釋放資源,而是當(dāng)全部用戶(hù)請(qǐng)求之后才一起釋放資源。由此,應(yīng)理解,如果用戶(hù)請(qǐng)求的播放范圍遠(yuǎn)大于分片長(zhǎng)度(每個(gè)用戶(hù)子請(qǐng)求的長(zhǎng)度),就會(huì)產(chǎn)生大量子請(qǐng)求,進(jìn)而占用大量?jī)?nèi)存。因此,為了解決上述問(wèn)題,在本發(fā)明的一個(gè)實(shí)施例中,通過(guò)對(duì)子請(qǐng)求各種狀態(tài)的綜合分析,可以對(duì)子請(qǐng)求的實(shí)際結(jié)束時(shí)間點(diǎn)進(jìn)行精確判斷,進(jìn)而可以復(fù)用已經(jīng)確認(rèn)結(jié)束的子請(qǐng)求的內(nèi)存和緩存等資源,避免生成大量子請(qǐng)求而導(dǎo)致的內(nèi)存浪費(fèi)。
[0065]根據(jù)本發(fā)明實(shí)施例的對(duì)分片請(qǐng)求進(jìn)行定長(zhǎng)對(duì)齊的緩存方法,在整個(gè)用戶(hù)請(qǐng)求結(jié)束后才一起釋放子請(qǐng)求所占用的資源,實(shí)現(xiàn)簡(jiǎn)單。
[0066]在本發(fā)明的一個(gè)實(shí)施例中,步驟S304至步驟S307為可選的。
[0067]下面結(jié)合附圖詳細(xì)描述根據(jù)本發(fā)明實(shí)施例的對(duì)分片請(qǐng)求進(jìn)行定長(zhǎng)對(duì)齊的緩存系統(tǒng)。
[0068]一種對(duì)分片請(qǐng)求進(jìn)行定長(zhǎng)對(duì)齊的緩存系統(tǒng),包括:源站;HTTP服務(wù)器,HTTP服務(wù)器具有緩存功能,用于接收具有第一播放范圍的第一用戶(hù)請(qǐng)求,并根據(jù)第一播放范圍將第一用戶(hù)請(qǐng)求切分為多個(gè)第一用戶(hù)子請(qǐng)求,其中,每個(gè)第一用戶(hù)子請(qǐng)求具有相同長(zhǎng)度的播放范圍且多個(gè)第一用戶(hù)子請(qǐng)求之間相互對(duì)齊,以及分別將多個(gè)第一用戶(hù)子請(qǐng)求發(fā)送至源站進(jìn)行回源操作,并接收源站返回的多個(gè)分段,和將多個(gè)分段中的每個(gè)分段作為單獨(dú)對(duì)象存儲(chǔ)至緩存中,其中,每個(gè)單獨(dú)對(duì)象具有對(duì)應(yīng)的播放范圍。
[0069]圖4是根據(jù)本發(fā)明一個(gè)實(shí)施例的對(duì)分片請(qǐng)求進(jìn)行定長(zhǎng)對(duì)齊的緩存系統(tǒng)的結(jié)構(gòu)示意圖。如圖4所示,該緩存系統(tǒng)包括:源站I和HTTP服務(wù)器2。
[0070]HTTP服務(wù)器2具有緩存功能,用于接收具有第一播放范圍的第一用戶(hù)請(qǐng)求,并根據(jù)第一播放范圍將第一用戶(hù)請(qǐng)求切分為多個(gè)第一用戶(hù)子請(qǐng)求,其中,每個(gè)第一用戶(hù)子請(qǐng)求具有相同長(zhǎng)度的播放范圍且多個(gè)第一用戶(hù)子請(qǐng)求之間相互對(duì)齊,然后分別將多個(gè)第一用戶(hù)子請(qǐng)求發(fā)送至源站I進(jìn)行回源操作,并接收源站I返回的多個(gè)分段,之后將多個(gè)分段中的每個(gè)分段作為單獨(dú)對(duì)象存儲(chǔ)至緩存中,其中,每個(gè)單獨(dú)對(duì)象具有對(duì)應(yīng)的播放范圍。
[0071]根據(jù)本發(fā)明實(shí)施例的對(duì)分片請(qǐng)求進(jìn)行定長(zhǎng)對(duì)齊的緩存系統(tǒng),將分片的請(qǐng)求轉(zhuǎn)換成為定長(zhǎng)對(duì)齊的對(duì)象片段,然后將每個(gè)片段看作一個(gè)獨(dú)立對(duì)象再進(jìn)行回源和緩存的存取,既節(jié)約了帶寬,又避免了拼接分段的復(fù)雜度。
[0072]在本發(fā)明的一個(gè)實(shí)施例中,HTTP服務(wù)器為Nginx服務(wù)器。Nginx服務(wù)器是一個(gè)高性能的HTTP和反向代理服務(wù)器,也是一個(gè)IMAP/P0P3/SMTP代理服務(wù)器,具有穩(wěn)定性高、功能集豐富、示例配置文件和系統(tǒng)資源消耗低的優(yōu)點(diǎn),此外Nginx的模塊化機(jī)制非常強(qiáng)大,通過(guò)增加模塊而不修改主體代碼就能實(shí)現(xiàn)期望功能。
[0073]在本發(fā)明的一個(gè)實(shí)施例中,HTTP服務(wù)器2還用于接收具有第二播放范圍的第二用戶(hù)請(qǐng)求,并根據(jù)第二播放范圍將第二用戶(hù)請(qǐng)求切分為多個(gè)第二用戶(hù)子請(qǐng)求,其中,每個(gè)第二用戶(hù)子請(qǐng)求具有相同長(zhǎng)度的播放范圍且多個(gè)第二用戶(hù)子請(qǐng)求之間相互對(duì)齊,然后判斷多個(gè)第二用戶(hù)子請(qǐng)求是否有播放范圍與緩存中保存的單獨(dú)對(duì)象的播放范圍相同的第二用戶(hù)子請(qǐng)求,并在多個(gè)第二用戶(hù)子請(qǐng)求中有播放范圍與緩存中保存的單獨(dú)對(duì)象的播放范圍相同的第二用戶(hù)子請(qǐng)求時(shí),從緩存中獲得與播放范圍相同的第二用戶(hù)子請(qǐng)求所對(duì)應(yīng)的單獨(dú)對(duì)象。由此,相對(duì)于整存整取的每次回源需要取回整個(gè)對(duì)象,本發(fā)明實(shí)施例節(jié)省了大量帶寬。另夕卜,由于每個(gè)分段都作為獨(dú)立對(duì)象單獨(dú)存放在緩存中,因此避免了拼接的復(fù)雜度。
[0074]在本發(fā)明的一個(gè)實(shí)施例中,第一或第二播放范圍包括起始字節(jié)和結(jié)束字節(jié)。因此,HTTP服務(wù)器2根據(jù)每個(gè)第一或第二用戶(hù)子請(qǐng)求中播放范圍的長(zhǎng)度、起始字節(jié)和結(jié)束字節(jié)將第一或第二用戶(hù)請(qǐng)求切分為多個(gè)第一或第二用戶(hù)子請(qǐng)求。
[0075]在本發(fā)明的另一個(gè)實(shí)施例中,第一或第二播放范圍包括起始字節(jié)、第一或第二播放范圍的總長(zhǎng)度。因此,HTTP服務(wù)器2根據(jù)每個(gè)第一或第二播放范圍的總長(zhǎng)度和起始字節(jié)將第一或第二用戶(hù)請(qǐng)求切分為多個(gè)第一或第二用戶(hù)子請(qǐng)求。
[0076]在本發(fā)明的又一個(gè)實(shí)施例中,對(duì)用戶(hù)請(qǐng)求的第一或第二播放范圍的起始字節(jié)和結(jié)束字節(jié)均不知道,無(wú)法構(gòu)造出第一個(gè)有效子請(qǐng)求,對(duì)此可以首先發(fā)出一個(gè)頭請(qǐng)求,以從源站獲得對(duì)象總長(zhǎng)度,然后計(jì)算用戶(hù)請(qǐng)求分片的位置。但是,由于部分源服務(wù)器不支持頭請(qǐng)求,因此在本發(fā)明的一個(gè)實(shí)施例中,HTTP服務(wù)器2發(fā)出一個(gè)只請(qǐng)求第一字節(jié)的播放范圍請(qǐng)求,進(jìn)而獲得對(duì)象總長(zhǎng)度,然后計(jì)算用戶(hù)請(qǐng)求分片位置。由于只請(qǐng)求第一字節(jié),因此浪費(fèi)的流量可以忽略。
[0077]應(yīng)理解,由于本發(fā)明將一個(gè)用戶(hù)請(qǐng)求拆分為多個(gè)子請(qǐng)求,這些子請(qǐng)求間的間隔時(shí)間就增大了用戶(hù)接收響應(yīng)的延遲。因此,在本發(fā)明的一個(gè)實(shí)施例中,在確認(rèn)需要發(fā)出的請(qǐng)求個(gè)數(shù)后,可以一次并行發(fā)送多個(gè)第一或第二用戶(hù)子請(qǐng)求,實(shí)現(xiàn)加速。應(yīng)理解,子請(qǐng)求的并發(fā)數(shù)可以自行配置。
[0078]此外,在本發(fā)明的一個(gè)實(shí)施例中,為了實(shí)現(xiàn)簡(jiǎn)單,HTTP服務(wù)器2還用于在處理完第一或第二用戶(hù)請(qǐng)求所屬用戶(hù)的全部用戶(hù)請(qǐng)求之后,才釋放多個(gè)第一或第二用戶(hù)子請(qǐng)求所占用的資源。
[0079]下面結(jié)合附圖詳細(xì)描述根據(jù)本發(fā)明實(shí)施例的HTTP服務(wù)器。
[0080]圖5是根據(jù)本發(fā)明一個(gè)實(shí)施例的HTTP服務(wù)器的結(jié)構(gòu)示意圖。如圖5所示,該HTTP服務(wù)器包括:接收模塊110、切分模塊120、回源模塊130和緩存模塊140。
[0081]接收模塊110用于接收具有第一播放范圍的第一用戶(hù)請(qǐng)求。切分模塊120用于根據(jù)第一播放范圍將第一用戶(hù)請(qǐng)求切分為多個(gè)第一用戶(hù)子請(qǐng)求,其中,每個(gè)第一用戶(hù)子請(qǐng)求具有相同長(zhǎng)度的播放范圍且多個(gè)第一用戶(hù)請(qǐng)求之間相互對(duì)齊?;卦茨K130用于分別將多個(gè)第一用戶(hù)子請(qǐng)求發(fā)送至源站進(jìn)行回源操作,并接收源站返回的多個(gè)分段。緩存模塊140用于將多個(gè)分段中的每個(gè)分段作為單獨(dú)對(duì)象進(jìn)行存儲(chǔ),其中每個(gè)單獨(dú)對(duì)象具有對(duì)應(yīng)的播放范圍。
[0082]根據(jù)本發(fā)明實(shí)施例的HTTP服務(wù)器,將分片的請(qǐng)求轉(zhuǎn)換成為定長(zhǎng)對(duì)齊的對(duì)象片段,然后將每個(gè)片段看作一個(gè)獨(dú)立對(duì)象再進(jìn)行回源和緩存的存取,既節(jié)約了帶寬,又避免了拼接分段的復(fù)雜度。
[0083]圖6是根據(jù)本發(fā)明一個(gè)實(shí)施例的HTTP服務(wù)器的結(jié)構(gòu)示意圖。如圖6所示,該HTTP服務(wù)器還包括調(diào)取模塊150。
[0084]在本發(fā)明的實(shí)施例中,接收模塊110還用于接收具有第二播放范圍的第二用戶(hù)請(qǐng)求。切分模塊120還用于根據(jù)第二播放范圍將第二用戶(hù)請(qǐng)求切分為多個(gè)第二用戶(hù)子請(qǐng)求,其中,每個(gè)第二用戶(hù)子請(qǐng)求具有相同長(zhǎng)度的播放范圍且多個(gè)第二用戶(hù)子請(qǐng)求之間相互對(duì)齊。
[0085]調(diào)取模塊150用于在多個(gè)第二用戶(hù)子請(qǐng)求中具有播放范圍與緩存模塊140中保存的單獨(dú)對(duì)象的播放范圍相同的第二用戶(hù)子請(qǐng)求時(shí),從緩存模塊140中獲得與播放范圍相同的第二用戶(hù)子請(qǐng)求所對(duì)應(yīng)的單獨(dú)對(duì)象。
[0086]根據(jù)本發(fā)明實(shí)施例的HTTP服務(wù)器,通過(guò)從緩存中直接調(diào)取播放范圍與第二用戶(hù)子請(qǐng)求的播放范圍相同的單獨(dú)對(duì)象,節(jié)省大量的流量。
[0087]在本發(fā)明的一個(gè)實(shí)施例中,第一或第二用戶(hù)子請(qǐng)求并行發(fā)送,實(shí)現(xiàn)加速,避免因子請(qǐng)求之間的間隔時(shí)間而增大用戶(hù)接收響應(yīng)的延遲。
[0088]圖7為根據(jù)本發(fā)明一個(gè)實(shí)施例的HTTP服務(wù)器的結(jié)構(gòu)示意圖。如圖所示,該HTTP服務(wù)器還包括釋放模塊160。
[0089]釋放模塊160用于在處理完第一或第二用戶(hù)請(qǐng)求所屬用戶(hù)的全部用戶(hù)請(qǐng)求之后,釋放多個(gè)第一或第二用戶(hù)子請(qǐng)求所占用的資源。
[0090]應(yīng)理解,如果用戶(hù)請(qǐng)求的播放范圍遠(yuǎn)大于分片長(zhǎng)度(每個(gè)用戶(hù)子請(qǐng)求的長(zhǎng)度),就會(huì)產(chǎn)生大量子請(qǐng)求,進(jìn)而占用大量?jī)?nèi)存。因此,為了解決上述問(wèn)題,在本發(fā)明的一個(gè)實(shí)施例中,通過(guò)對(duì)子請(qǐng)求各種狀態(tài)的綜合分析,可以對(duì)子請(qǐng)求的實(shí)際結(jié)束時(shí)間點(diǎn)進(jìn)行精確判斷,進(jìn)而可以復(fù)用已經(jīng)確認(rèn)結(jié)束的子請(qǐng)求的內(nèi)存和緩存等資源,避免生成大量子請(qǐng)求而導(dǎo)致的內(nèi)
存浪費(fèi)。
[0091]根據(jù)本發(fā)明實(shí)施例的HTTP服務(wù)器,在整個(gè)用戶(hù)請(qǐng)求結(jié)束后才一起釋放子請(qǐng)求所占用的資源,實(shí)現(xiàn)簡(jiǎn)單。
[0092]在本發(fā)明的一個(gè)實(shí)施例中,調(diào)取模塊150為可選的。
[0093]應(yīng)理解,上述各個(gè)模塊或者裝置的具體實(shí)現(xiàn)過(guò)程可與上述方法實(shí)施例的描述相對(duì)應(yīng),此處不再詳細(xì)描述。
[0094]應(yīng)當(dāng)理解,本發(fā)明的各部分可以用硬件、軟件、固件或它們的組合來(lái)實(shí)現(xiàn)。在上述實(shí)施方式中,多個(gè)步驟或方法可以用存儲(chǔ)在存儲(chǔ)器中且由合適的指令執(zhí)行系統(tǒng)執(zhí)行的軟件或固件來(lái)實(shí)現(xiàn)。例如,如果用硬件來(lái)實(shí)現(xiàn),和在另一實(shí)施方式中一樣,可用本領(lǐng)域公知的下列技術(shù)中的任一項(xiàng)或他們的組合來(lái)實(shí)現(xiàn):具有用于對(duì)數(shù)據(jù)信號(hào)實(shí)現(xiàn)邏輯功能的邏輯門(mén)電路的離散邏輯電路,具有合適的組合邏輯門(mén)電路的專(zhuān)用集成電路,可編程門(mén)陣列(PGA),現(xiàn)場(chǎng)可編程門(mén)陣列(FPGA)等。
[0095]在本說(shuō)明書(shū)的描述中,參考術(shù)語(yǔ)“一個(gè)實(shí)施例”、“一些實(shí)施例”、“示例”、“具體示例”、或“一些示例”等的描述意指結(jié)合該實(shí)施例或示例描述的具體特征、結(jié)構(gòu)、材料或者特點(diǎn)包含于本發(fā)明的至少一個(gè)實(shí)施例或示例中。在本說(shuō)明書(shū)中,對(duì)上述術(shù)語(yǔ)的示意性表述不一定指的是相同的實(shí)施例或示例。而且,描述的具體特征、結(jié)構(gòu)、材料或者特點(diǎn)可以在任何的一個(gè)或多個(gè)實(shí)施例或示例中以合適的方式結(jié)合。
[0096]盡管已經(jīng)示出和描述了本發(fā)明的實(shí)施例,對(duì)于本領(lǐng)域的普通技術(shù)人員而言,可以理解在不脫離本發(fā)明的原理和精神的情況下可以對(duì)這些實(shí)施例進(jìn)行多種變化、修改、替換和變型,本發(fā)明的范圍由所附權(quán)利要求及其等同限定。
【權(quán)利要求】
1.一種對(duì)分片請(qǐng)求進(jìn)行定長(zhǎng)對(duì)齊的緩存方法,其特征在于,包括以下步驟: 接收具有第一播放范圍的第一用戶(hù)請(qǐng)求,并根據(jù)所述第一播放范圍將所述第一用戶(hù)請(qǐng)求切分為多個(gè)第一用戶(hù)子請(qǐng)求,其中,每個(gè)所述第一用戶(hù)子請(qǐng)求具有相同長(zhǎng)度的播放范圍且所述多個(gè)第一用戶(hù)子請(qǐng)求之間相互對(duì)齊; 分別將所述多個(gè)第一用戶(hù)子請(qǐng)求發(fā)送至源站進(jìn)行回源操作,并接收所述源站返回的多個(gè)分段;以及 將所述多個(gè)分段中的每個(gè)分段作為單獨(dú)對(duì)象存儲(chǔ)至緩存中,每個(gè)所述單獨(dú)對(duì)象具有對(duì)應(yīng)的播放范圍。
2.如權(quán)利要求1所述的對(duì)分片請(qǐng)求進(jìn)行定長(zhǎng)對(duì)齊的緩存方法,其特征在于,還包括: 接收具有第二播放范圍的第二用戶(hù)請(qǐng)求,并根據(jù)所述第二播放范圍將所述第二用戶(hù)請(qǐng)求切分為多個(gè)第二用戶(hù)子請(qǐng)求,其中,每個(gè)所述第二用戶(hù)子請(qǐng)求具有相同長(zhǎng)度的播放范圍且所述多個(gè)第二用戶(hù)子請(qǐng)求之間相互對(duì)齊; 判斷所述多個(gè)第二用戶(hù)子請(qǐng)求中是否有播放范圍與所述緩存中保存的所述單獨(dú)對(duì)象的播放范圍相同的第二用戶(hù)子請(qǐng)求; 如果有播放范圍相同的第二用戶(hù)子請(qǐng)求,則從所述緩存中獲得與所述單獨(dú)對(duì)象的播放范圍相同的第二用戶(hù)子請(qǐng)求所對(duì)應(yīng)的所述單獨(dú)對(duì)象。
3.如權(quán)利要求1或2所述的對(duì)分片請(qǐng)求進(jìn)行定長(zhǎng)對(duì)齊的緩存方法,其特征在于,所述第一或第二播放范圍包括起始字節(jié)和結(jié)束字節(jié)。
4.如權(quán)利要求3所述的對(duì)分片請(qǐng)求進(jìn)行定長(zhǎng)對(duì)齊的緩存方法,其特征在于,所述根據(jù)第一或第二播放范圍將所述第一或第二用戶(hù)請(qǐng)求切分為多個(gè)第一或第二用戶(hù)子請(qǐng)求進(jìn)一步包括: 根據(jù)每個(gè)所述第一或第二用戶(hù)子請(qǐng)求中播放范圍的長(zhǎng)度、所述起始字節(jié)和所述結(jié)束字節(jié)對(duì)所述第一或第二用戶(hù)請(qǐng)求進(jìn)行切分。
5.如權(quán)利要求1或2所述的對(duì)分片請(qǐng)求進(jìn)行定長(zhǎng)對(duì)齊的緩存方法,其特征在于,所述第一或第二播放范圍包括起始字節(jié)、第一或第二播放范圍的總長(zhǎng)度。
6.如權(quán)利要求5所述的對(duì)分片請(qǐng)求進(jìn)行定長(zhǎng)對(duì)齊的緩存方法,其特征在于,所述根據(jù)第一或第二播放范圍將所述第一或第二用戶(hù)請(qǐng)求切分為多個(gè)第一或第二用戶(hù)子請(qǐng)求進(jìn)一步包括: 根據(jù)每個(gè)所述第一或第二播放范圍的總長(zhǎng)度、所述起始字節(jié)對(duì)所述第一或第二用戶(hù)請(qǐng)求進(jìn)行切分。
7.如權(quán)利要求1或2所述的對(duì)分片請(qǐng)求進(jìn)行定長(zhǎng)對(duì)齊的緩存方法,其特征在于,還包括: 向所述源站發(fā)送播放范圍請(qǐng)求,所述播放范圍請(qǐng)求只請(qǐng)求第一字節(jié)。
8.如權(quán)利要求1-7任一項(xiàng)所述的對(duì)分片請(qǐng)求進(jìn)行定長(zhǎng)對(duì)齊的緩存方法,其特征在于,還包括: 所述多個(gè)第一或第二用戶(hù)子請(qǐng)求為并行發(fā)送。
9.如權(quán)利要求1-8任一項(xiàng)所述的對(duì)分片請(qǐng)求進(jìn)行定長(zhǎng)對(duì)齊的緩存方法,其特征在于,還包括: 在處理完所述第一或第二用戶(hù)請(qǐng)求所屬用戶(hù)的全部用戶(hù)請(qǐng)求之后,釋放所述多個(gè)第一或第二用戶(hù)子請(qǐng)求所占用的資源。
10.一種對(duì)分片請(qǐng)求進(jìn)行定長(zhǎng)對(duì)齊的緩存系統(tǒng),其特征在于,包括: 源站; HTTP服務(wù)器,所述HTTP服務(wù)器具有緩存功能,用于接收具有第一播放范圍的第一用戶(hù)請(qǐng)求,并根據(jù)所述第一播放范圍將所述第一用戶(hù)請(qǐng)求切分為多個(gè)第一用戶(hù)子請(qǐng)求,其中,每個(gè)所述第一用戶(hù)子請(qǐng)求具有相同長(zhǎng)度的播放范圍且所述多個(gè)第一用戶(hù)子請(qǐng)求之間相互對(duì)齊,以及分別將所述多個(gè)第一用戶(hù)子請(qǐng)求發(fā)送至所述源站進(jìn)行回源操作,并接收所述源站返回的多個(gè)分段,和將所述多個(gè)分段中的每個(gè)分段作為單獨(dú)對(duì)象存儲(chǔ)至所述緩存中,其中,每個(gè)所述單獨(dú)對(duì)象具有對(duì)應(yīng)的播放范圍。
11.如權(quán)利要求10所述的對(duì)分片請(qǐng)求進(jìn)行定長(zhǎng)對(duì)齊的緩存系統(tǒng),其特征在于,所述HTTP服務(wù)器為Nginx服務(wù)器。
12.如權(quán)利要求10所述的對(duì)分片請(qǐng)求進(jìn)行定長(zhǎng)對(duì)齊的緩存系統(tǒng),其特征在于,所述HTTP服務(wù)器還用于接收具有第二播放范圍的第二用戶(hù)請(qǐng)求,并根據(jù)所述第二播放范圍將所述第二用戶(hù)請(qǐng)求切分為多個(gè)第二用戶(hù)子請(qǐng)求,其中,每個(gè)所述第二用戶(hù)子請(qǐng)求具有相同長(zhǎng)度的播放范圍且所述多個(gè)第二用戶(hù)子請(qǐng)求之間相互對(duì)齊,以及在所述多個(gè)第二用戶(hù)子請(qǐng)求中有播放范圍與所述緩存中保存的所述單獨(dú)對(duì)象的播放范圍相同的第二用戶(hù)子請(qǐng)求時(shí),從所述緩存中獲得與所述播放范圍相同的第二用戶(hù)子請(qǐng)求所對(duì)應(yīng)的所述單獨(dú)對(duì)象。
13.如權(quán)利要求10或12所述的對(duì)分片請(qǐng)求進(jìn)行定長(zhǎng)對(duì)齊的緩存系統(tǒng),其特征在于,所述第一或第二播放范圍包括起始字節(jié)和結(jié)束字節(jié)。
14.如權(quán)利要求13所述的對(duì)分片請(qǐng)求進(jìn)行定長(zhǎng)對(duì)齊的緩存系統(tǒng),其特征在于,所述HTTP服務(wù)器根據(jù)每個(gè)所述第一或第二用戶(hù)子請(qǐng)求中播放范圍的長(zhǎng)度、所述起始字節(jié)和所述結(jié)束字節(jié)對(duì)所述第一或第 二用戶(hù)請(qǐng)求進(jìn)行切分。
15.如權(quán)利要求10或12所述的對(duì)分片請(qǐng)求進(jìn)行定長(zhǎng)對(duì)齊的緩存系統(tǒng),其特征在于,所述第一或第二播放范圍包括起始字節(jié)、第一或第二播放范圍的總長(zhǎng)度。
16.如權(quán)利要求15所述的對(duì)分片請(qǐng)求進(jìn)行定長(zhǎng)對(duì)齊的緩存系統(tǒng),其特征在于,所述HTTP服務(wù)器根據(jù)每個(gè)所述第一或第二播放范圍的總長(zhǎng)度、所述起始字節(jié)對(duì)所述第一或第二用戶(hù)請(qǐng)求進(jìn)行切分。
17.如權(quán)利要求10或12所述的對(duì)分片請(qǐng)求進(jìn)行定長(zhǎng)對(duì)齊的緩存方法,其特征在于,所述HTTP服務(wù)器還用于向所述源站發(fā)送播放范圍請(qǐng)求,所述播放范圍請(qǐng)求只請(qǐng)求第一字節(jié)。
18.如權(quán)利要求10或12所述的對(duì)分片請(qǐng)求進(jìn)行定長(zhǎng)對(duì)齊的緩存方法,其特征在于,其中,所述多個(gè)第一或第二用戶(hù)子請(qǐng)求為并行發(fā)送。
19.如權(quán)利要求10或12所述的對(duì)分片請(qǐng)求進(jìn)行定長(zhǎng)對(duì)齊的緩存方法,其特征在于,所述HTTP服務(wù)器還用于在處理完所述第一或第二用戶(hù)請(qǐng)求所屬用戶(hù)的全部用戶(hù)請(qǐng)求之后,釋放所述多個(gè)第一或第二用戶(hù)子請(qǐng)求所占用的資源。
20.—種HTTP服務(wù)器,其特征在于,包括: 接收模塊,用于接收具有第一播放范圍的第一用戶(hù)請(qǐng)求; 切分模塊,用于根據(jù)所述第一播放范圍將所述第一用戶(hù)請(qǐng)求切分為多個(gè)第一用戶(hù)子請(qǐng)求,其中,每個(gè)所述第一用戶(hù)子請(qǐng)求具有相同長(zhǎng)度的播放范圍且所述多個(gè)第一用戶(hù)子請(qǐng)求之間相互對(duì)齊;回源模塊,用于分別將所述多個(gè)第一用戶(hù)子請(qǐng)求發(fā)送至源站進(jìn)行回源操作,并接收所述源站返回的多個(gè)分段;以及 緩存模塊,用于將所述多個(gè)分段中的每個(gè)分段作為單獨(dú)對(duì)象進(jìn)行存儲(chǔ),每個(gè)所述單獨(dú)對(duì)象具有對(duì)應(yīng)的播放范圍。
21.如權(quán)利要求20所述的HTTP服務(wù)器,其特征在于, 所述接收模塊,還用于接收具有第二播放范圍的第二用戶(hù)請(qǐng)求; 所述切分模塊,還用于根據(jù)所述第二播放范圍將所述第二用戶(hù)請(qǐng)求切分為多個(gè)第二用戶(hù)子請(qǐng)求,其中,每個(gè)所述第二用戶(hù)子請(qǐng)求具有相同長(zhǎng)度的播放范圍且所述多個(gè)第二用戶(hù)子請(qǐng)求之間相互對(duì)齊。
22.如權(quán)利要求21所述的HTTP服務(wù)器,其特征在于,還包括: 調(diào)取模塊,用于在所述多個(gè)第二用戶(hù)子請(qǐng)求中具有播放范圍與所述緩存模塊中保存的所述單獨(dú)對(duì)象的播放范圍相同的第二用戶(hù)子請(qǐng)求時(shí),從所述緩存模塊中獲得與所述播放范圍相同的第二用戶(hù)子請(qǐng)求所對(duì)應(yīng)的所述單獨(dú)對(duì)象。
23.如權(quán)利要求21或22所述的HTTP服務(wù)器,其特征在于,所述多個(gè)第一或第二用戶(hù)子請(qǐng)求為并行發(fā)送。
24.如權(quán)利要求21所述的HTTP服務(wù)器,其特征在于,還包括: 釋放模塊,用于在處理完所述第一或第二用戶(hù)請(qǐng)求所屬用戶(hù)的全部用戶(hù)請(qǐng)求之后,釋放所述多個(gè)第一或第二用戶(hù)子請(qǐng)求所占用的資源。
【文檔編號(hào)】H04L29/08GK103475679SQ201210185452
【公開(kāi)日】2013年12月25日 申請(qǐng)日期:2012年6月6日 優(yōu)先權(quán)日:2012年6月6日
【發(fā)明者】武炳正 申請(qǐng)人:百度在線(xiàn)網(wǎng)絡(luò)技術(shù)(北京)有限公司
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1