本申請涉及網(wǎng)絡(luò)技術(shù)領(lǐng)域,尤其涉及一種頁面推送方法及裝置、網(wǎng)絡(luò)系統(tǒng)。
背景技術(shù):
隨著信息化時(shí)代的到來,人們對于隨時(shí)隨地接入互聯(lián)網(wǎng)進(jìn)行信息交流的需求越來越高。在用戶使用上網(wǎng)服務(wù)之前,需要先通過門戶服務(wù)器進(jìn)行用戶認(rèn)證。運(yùn)營商會(huì)在用戶認(rèn)證完成后,通過門戶服務(wù)器向用戶推送一些頁面,如廣告頁面。具體的,用戶在用戶設(shè)備的瀏覽器中輸入內(nèi)容網(wǎng)站的統(tǒng)一資源定位符(Uniform Resource Locator,URL)地址,向內(nèi)容網(wǎng)站的應(yīng)用服務(wù)器發(fā)出訪問請求。收到該訪問請求后,應(yīng)用服務(wù)器向該用戶設(shè)備推送相應(yīng)的網(wǎng)頁。
其中,用戶在網(wǎng)絡(luò)瀏覽器對網(wǎng)頁內(nèi)的資源發(fā)生了第一次請求之后,用戶設(shè)備把資源中的一部分?jǐn)?shù)據(jù)存儲(chǔ)在數(shù)據(jù)處理設(shè)備的頁面緩存(PageChache)中,當(dāng)網(wǎng)絡(luò)瀏覽器退回到歷史網(wǎng)頁,再次對該歷史網(wǎng)頁發(fā)出請求的時(shí)候,按照特定的策略加載所述頁面緩存的資源,減少超文本傳輸協(xié)議(HyperText Transfer Protocol,HTTP)請求次數(shù)與傳輸數(shù)據(jù)量,以此提高展示歷史網(wǎng)頁的速度。
頁面緩存是直接將頁面緩存,并設(shè)置過期時(shí)間,這樣訪問頁面時(shí),會(huì)先獲取緩存中的數(shù)據(jù),如果沒有,會(huì)實(shí)時(shí)再向服務(wù)器獲取,但它無法做到當(dāng)數(shù)據(jù)出現(xiàn)問題時(shí)的實(shí)時(shí)修復(fù),因此頁面推送速度比較慢,尤其是在計(jì)算資源和網(wǎng)絡(luò)帶寬資源都很有限的移動(dòng)互聯(lián)網(wǎng)設(shè)備(如智能手機(jī)、掌上電腦、平板電腦等)上使用的網(wǎng)絡(luò)瀏覽器,頁面推送速度會(huì)更慢,并且,PageCache不支持定制,如果頁面出現(xiàn)問題,無法實(shí)現(xiàn)頁面跳轉(zhuǎn),嚴(yán)重影響了用戶的頁面瀏覽體驗(yàn)。
技術(shù)實(shí)現(xiàn)要素:
本申請實(shí)施例提供了一種頁面推送方法及裝置、網(wǎng)絡(luò)系統(tǒng),用以實(shí)現(xiàn)可定制的頁面推送,提高頁面推送效率以及用戶的頁面瀏覽體驗(yàn)。
本申請實(shí)施例提供的一種頁面推送方法,包括:
接收用戶設(shè)備發(fā)送的頁面訪問請求;
根據(jù)所述頁面訪問請求,當(dāng)確定需要執(zhí)行預(yù)設(shè)的頁面跳轉(zhuǎn)規(guī)則時(shí),按照該頁面跳轉(zhuǎn)規(guī)則,向所述用戶設(shè)備推送頁面。
通過該方法,在接收用戶設(shè)備發(fā)送的頁面訪問請求后,根據(jù)所述頁面訪問請求,當(dāng)確定需要執(zhí)行預(yù)設(shè)的頁面跳轉(zhuǎn)規(guī)則時(shí),按照該頁面跳轉(zhuǎn)規(guī)則,向所述用戶設(shè)備推送頁面,從而實(shí)現(xiàn)了可定制的頁面推送,即可以按照用戶設(shè)備發(fā)送的頁面訪問請求所對應(yīng)的頁面跳轉(zhuǎn)規(guī)則,向所述用戶設(shè)備推送頁面,提高頁面推送效率以及用戶的頁面瀏覽體驗(yàn)。
可選地,當(dāng)確定不需要執(zhí)行預(yù)設(shè)的頁面跳轉(zhuǎn)規(guī)則時(shí),該方法還包括:
根據(jù)所述頁面訪問請求,當(dāng)確定不能向所述用戶設(shè)備推送正常頁面時(shí),根據(jù)所述頁面訪問請求從內(nèi)容分發(fā)網(wǎng)絡(luò)CDN查找相應(yīng)的緩存頁面,當(dāng)查得相應(yīng)的緩存頁面時(shí),向所述用戶設(shè)備推送該緩存頁面。
從而,通過判斷是否能向所述用戶設(shè)備推送正常頁面,當(dāng)確定不能向所述用戶設(shè)備推送正常頁面時(shí),根據(jù)所述頁面訪問請求從內(nèi)容分發(fā)網(wǎng)絡(luò)CDN查找相應(yīng)的緩存頁面,當(dāng)查得相應(yīng)的緩存頁面時(shí),向所述用戶設(shè)備推送該緩存頁面,進(jìn)一步提高了頁面推送效率,在無法推送正常頁面時(shí),同樣可以快速響應(yīng)用戶設(shè)備發(fā)送的頁面訪問請求,保證頁面的可用性。
可選地,當(dāng)從所述CDN未查得相應(yīng)的緩存頁面時(shí),該方法還包括:
根據(jù)所述頁面訪問請求從本地或者預(yù)設(shè)的內(nèi)容管理服務(wù)器查找相應(yīng)的緩存頁面,當(dāng)查得相應(yīng)的緩存頁面時(shí),向所述用戶設(shè)備推送該緩存頁面。
從而,當(dāng)從所述CDN未查得相應(yīng)的緩存頁面時(shí),根據(jù)所述頁面訪問請求從本地或者預(yù)設(shè)的內(nèi)容管理服務(wù)器查找相應(yīng)的緩存頁面,當(dāng)查得相應(yīng)的緩存頁面時(shí),向所述用戶設(shè)備推送該緩存頁面,也可以進(jìn)一步提高頁面推送效率,在 無法推送正常頁面以及無法獲取CDN換成頁面時(shí),同樣可以從本地或者預(yù)設(shè)的內(nèi)容管理服務(wù)器獲取緩存頁面,實(shí)現(xiàn)快速響應(yīng)用戶設(shè)備發(fā)送的頁面訪問請求,進(jìn)一步提高了頁面的可用性。
可選地,當(dāng)確定能向所述用戶設(shè)備推送正常頁面時(shí),該方法還包括:向所述用戶設(shè)備推送正常頁面。
可選地,通過如下方式判斷是否能向所述用戶設(shè)備推送正常頁面:
根據(jù)所述頁面訪問請求返回的超文本傳輸協(xié)議狀態(tài)碼,判斷是否能向所述用戶設(shè)備推送正常頁面。
可選地,當(dāng)所述超文本傳輸協(xié)議狀態(tài)碼為預(yù)設(shè)的正常值時(shí),確定能向所述用戶設(shè)備推送正常頁面,否則,確定不能向所述用戶設(shè)備推送正常頁面。
可選地,向所述用戶設(shè)備推送該緩存頁面的同時(shí),還將超文本傳輸協(xié)議狀態(tài)碼發(fā)送給所述用戶設(shè)備,其中,該超文本傳輸協(xié)議狀態(tài)碼為302。從而可以避免網(wǎng)絡(luò)瀏覽器的訪問頁面時(shí)的永久性重定向。
可選地,根據(jù)所述頁面訪問請求,當(dāng)確定需要執(zhí)行預(yù)設(shè)的頁面跳轉(zhuǎn)規(guī)則時(shí),按照該頁面跳轉(zhuǎn)規(guī)則,向所述用戶設(shè)備推送頁面,包括:
根據(jù)所述頁面訪問請求中攜帶的統(tǒng)一資源定位符URL,查找預(yù)設(shè)的頁面跳轉(zhuǎn)規(guī)則,當(dāng)該頁面跳轉(zhuǎn)規(guī)則中存在所述URL對應(yīng)的強(qiáng)制跳轉(zhuǎn)頁面時(shí),將該強(qiáng)制跳轉(zhuǎn)頁面推送給所述用戶設(shè)備。
本申請實(shí)施例提供的一種頁面推送裝置,包括:
接收單元,用于接收用戶設(shè)備發(fā)送的頁面訪問請求;
處理單元,用于根據(jù)所述頁面訪問請求,當(dāng)確定需要執(zhí)行預(yù)設(shè)的頁面跳轉(zhuǎn)規(guī)則時(shí),按照該頁面跳轉(zhuǎn)規(guī)則,向所述用戶設(shè)備推送頁面。
通過該裝置,在接收單元接收用戶設(shè)備發(fā)送的頁面訪問請求后,處理單元根據(jù)所述頁面訪問請求,當(dāng)確定需要執(zhí)行預(yù)設(shè)的頁面跳轉(zhuǎn)規(guī)則時(shí),按照該頁面跳轉(zhuǎn)規(guī)則,向所述用戶設(shè)備推送頁面,從而實(shí)現(xiàn)了可定制的頁面推送,即可以按照用戶設(shè)備發(fā)送的頁面訪問請求所對應(yīng)的頁面跳轉(zhuǎn)規(guī)則,向所述用戶設(shè)備推 送頁面,提高頁面推送效率以及用戶的頁面瀏覽體驗(yàn)。
可選地,所述處理單元還用于:當(dāng)確定不需要執(zhí)行預(yù)設(shè)的頁面跳轉(zhuǎn)規(guī)則時(shí),根據(jù)所述頁面訪問請求,當(dāng)確定不能向所述用戶設(shè)備推送正常頁面時(shí),根據(jù)所述頁面訪問請求從內(nèi)容分發(fā)網(wǎng)絡(luò)CDN查找相應(yīng)的緩存頁面,當(dāng)查得相應(yīng)的緩存頁面時(shí),向所述用戶設(shè)備推送該緩存頁面。
從而,通過處理單元判斷是否能向所述用戶設(shè)備推送正常頁面,當(dāng)確定不能向所述用戶設(shè)備推送正常頁面時(shí),根據(jù)所述頁面訪問請求從內(nèi)容分發(fā)網(wǎng)絡(luò)CDN查找相應(yīng)的緩存頁面,當(dāng)查得相應(yīng)的緩存頁面時(shí),向所述用戶設(shè)備推送該緩存頁面,進(jìn)一步提高了頁面推送效率,在無法推送正常頁面時(shí),同樣可以快速響應(yīng)用戶設(shè)備發(fā)送的頁面訪問請求,保證頁面的可用性。
可選地,所述處理單元還用于:當(dāng)從所述CDN未查得相應(yīng)的緩存頁面時(shí),根據(jù)所述頁面訪問請求從本地或者預(yù)設(shè)的內(nèi)容管理服務(wù)器查找相應(yīng)的緩存頁面,當(dāng)查得相應(yīng)的緩存頁面時(shí),向所述用戶設(shè)備推送該緩存頁面。
從而,當(dāng)處理單元從所述CDN未查得相應(yīng)的緩存頁面時(shí),處理單元還可以根據(jù)所述頁面訪問請求從本地或者預(yù)設(shè)的內(nèi)容管理服務(wù)器查找相應(yīng)的緩存頁面,當(dāng)查得相應(yīng)的緩存頁面時(shí),向所述用戶設(shè)備推送該緩存頁面,也可以進(jìn)一步提高頁面推送效率,在無法推送正常頁面以及無法獲取CDN換成頁面時(shí),同樣可以從本地或者預(yù)設(shè)的內(nèi)容管理服務(wù)器獲取緩存頁面,實(shí)現(xiàn)快速響應(yīng)用戶設(shè)備發(fā)送的頁面訪問請求,進(jìn)一步提高了頁面的可用性。
可選地,所述處理單元還用于:當(dāng)確定能向所述用戶設(shè)備推送正常頁面時(shí),向所述用戶設(shè)備推送正常頁面。
可選地,所述處理單元通過如下方式判斷是否能向所述用戶設(shè)備推送正常頁面:
根據(jù)所述頁面訪問請求返回的超文本傳輸協(xié)議狀態(tài)碼,判斷是否能向所述用戶設(shè)備推送正常頁面。
可選地,當(dāng)所述超文本傳輸協(xié)議狀態(tài)碼為預(yù)設(shè)的正常值時(shí),所述處理單元 確定能向所述用戶設(shè)備推送正常頁面,否則,確定不能向所述用戶設(shè)備推送正常頁面。
可選地,所述處理單元向所述用戶設(shè)備推送該緩存頁面的同時(shí),還將超文本傳輸協(xié)議狀態(tài)碼發(fā)送給所述用戶設(shè)備,其中,該超文本傳輸協(xié)議狀態(tài)碼為302。
可選地,所述處理單元具體用于:
根據(jù)所述頁面訪問請求中攜帶的統(tǒng)一資源定位符URL,查找預(yù)設(shè)的頁面跳轉(zhuǎn)規(guī)則,當(dāng)該頁面跳轉(zhuǎn)規(guī)則中存在所述URL對應(yīng)的強(qiáng)制跳轉(zhuǎn)頁面時(shí),將該強(qiáng)制跳轉(zhuǎn)頁面推送給所述用戶設(shè)備。
可選地,所述的頁面推送裝置為應(yīng)用服務(wù)器。
本申請實(shí)施例提供的一種網(wǎng)絡(luò)系統(tǒng),包括本申請實(shí)施例提供的所述的頁面推送裝置。
可選地,所述頁面推送裝置為應(yīng)用服務(wù)器,該系統(tǒng)還包括:
配置中心,用于為所述應(yīng)用服務(wù)器配置所述的頁面跳轉(zhuǎn)規(guī)則,以及,推送頁面到內(nèi)容分發(fā)網(wǎng)絡(luò)CDN、內(nèi)容管理服務(wù)器、和所述應(yīng)用服務(wù)器中;
內(nèi)容管理服務(wù)器,用于緩存所述配置中心推送的頁面,當(dāng)接收到應(yīng)用服務(wù)器發(fā)送的來自用戶設(shè)備的頁面訪問請求時(shí),提供相應(yīng)的緩存頁面給該用戶設(shè)備;
內(nèi)容分發(fā)網(wǎng)絡(luò)CDN,用于緩存所述配置中心推送的頁面,當(dāng)接收到應(yīng)用服務(wù)器發(fā)送的來自用戶設(shè)備的頁面訪問請求時(shí),提供相應(yīng)的緩存頁面給該用戶設(shè)備。
附圖說明
圖1為本申請實(shí)施例提供的一種頁面推送方法的流程示意圖;
圖2為本申請實(shí)施例提供的當(dāng)確定不需要執(zhí)行預(yù)設(shè)的頁面跳轉(zhuǎn)規(guī)則時(shí)的頁面推送方法的流程示意圖;
圖3為本申請實(shí)施例提供的一種網(wǎng)絡(luò)系統(tǒng)的結(jié)構(gòu)示意圖;
圖4為本申請實(shí)施例提供的一種頁面推送裝置的結(jié)構(gòu)示意圖。
具體實(shí)施方式
本申請實(shí)施例提供了一種頁面推送方法及裝置、網(wǎng)絡(luò)系統(tǒng),用以實(shí)現(xiàn)可定制的頁面推送,提高頁面推送效率以及用戶的頁面瀏覽體驗(yàn)。
下面結(jié)合附圖對本申請實(shí)施例提供的技術(shù)方案進(jìn)行說明。
參見圖1,本申請實(shí)施例提供的一種頁面推送方法,包括:
S101、接收用戶設(shè)備發(fā)送的頁面訪問請求;
例如,可以通過有線或無線的方式,接收用戶設(shè)備發(fā)送的頁面訪問請求,當(dāng)用戶設(shè)備是電腦時(shí),可以通過有線的方式接收用戶設(shè)備發(fā)送的頁面訪問請求,當(dāng)用戶設(shè)備是手機(jī)等移動(dòng)終端時(shí),可以通過無線的方式接收用戶設(shè)備發(fā)送的頁面訪問請求,具體如何接收用戶設(shè)備發(fā)送的頁面訪問請求,本申請實(shí)施例不作限制。
其中,所述頁面訪問請求中,攜帶有請求訪問的頁面地址,例如是URL地址,還可以攜帶其他信息,例如包括用戶設(shè)備的標(biāo)識信息、用戶信息、超文本傳輸協(xié)議(Hyper Text Transfer Protocol,HTTP)狀態(tài)碼。所述的HTTP狀態(tài)碼,用于指示頁面是否正常,即是否可以正常推送頁面。例如,當(dāng)HTTP狀態(tài)碼為2xx或者3xx時(shí),說明可以正常推送頁面,否則,若HTTP狀態(tài)碼為4xx或者5xx時(shí),說明不能正常推送頁面,即正常的頁面推送流程存在問題。具體HTTP狀態(tài)碼的取值及其含義在現(xiàn)有技術(shù)中已經(jīng)有所定義,在此不再贅述。
S102、根據(jù)所述頁面訪問請求,當(dāng)確定需要執(zhí)行預(yù)設(shè)的頁面跳轉(zhuǎn)規(guī)則時(shí),按照該頁面跳轉(zhuǎn)規(guī)則,向所述用戶設(shè)備推送頁面。
例如,根據(jù)所述頁面訪問請求中攜帶的統(tǒng)一資源定位符URL,查找預(yù)設(shè)的頁面跳轉(zhuǎn)規(guī)則,當(dāng)該頁面跳轉(zhuǎn)規(guī)則中存在所述URL對應(yīng)的強(qiáng)制跳轉(zhuǎn)頁面時(shí),將該強(qiáng)制跳轉(zhuǎn)頁面推送給所述用戶設(shè)備。
通過該方法,在接收用戶設(shè)備發(fā)送的頁面訪問請求后,根據(jù)所述頁面訪問請求,當(dāng)確定需要執(zhí)行預(yù)設(shè)的頁面跳轉(zhuǎn)規(guī)則時(shí),按照該頁面跳轉(zhuǎn)規(guī)則,向所述用戶設(shè)備推送頁面,從而實(shí)現(xiàn)了可定制的頁面推送,即可以按照用戶設(shè)備發(fā)送的頁面訪問請求所對應(yīng)的頁面跳轉(zhuǎn)規(guī)則,向所述用戶設(shè)備推送頁面,提高頁面推送效率以及用戶的頁面瀏覽體驗(yàn)。
可選地,當(dāng)確定不需要執(zhí)行預(yù)設(shè)的頁面跳轉(zhuǎn)規(guī)則時(shí),該方法還包括:
根據(jù)所述頁面訪問請求,當(dāng)確定不能向所述用戶設(shè)備推送正常頁面時(shí),根據(jù)所述頁面訪問請求從內(nèi)容分發(fā)網(wǎng)絡(luò)(Content Delivery Network,CDN)查找相應(yīng)的緩存頁面,當(dāng)查得相應(yīng)的緩存頁面時(shí),向所述用戶設(shè)備推送該緩存頁面。
可選地,當(dāng)確定能向所述用戶設(shè)備推送正常頁面時(shí),該方法還包括:向所述用戶設(shè)備推送正常頁面。
可選地,通過如下方式判斷是否能向所述用戶設(shè)備推送正常頁面:
根據(jù)所述頁面訪問請求返回的超文本傳輸協(xié)議狀態(tài)碼,判斷是否能向所述用戶設(shè)備推送正常頁面。
可選地,當(dāng)所述超文本傳輸協(xié)議狀態(tài)碼為預(yù)設(shè)的正常值時(shí),確定能向所述用戶設(shè)備推送正常頁面,否則,確定不能向所述用戶設(shè)備推送正常頁面。
例如,當(dāng)HTTP狀態(tài)碼為4xx或者5xx時(shí),說明不能向用戶設(shè)備推送正常頁面,在這種情況下,可以根據(jù)頁面訪問請求從CDN查找相應(yīng)的緩存頁面,具體地,可以根據(jù)頁面訪問請求中攜帶的URL,查找CDN上是否有對應(yīng)的緩存頁面,當(dāng)查得相應(yīng)的緩存頁面時(shí),向用戶設(shè)備推送該緩存頁面。
本申請實(shí)施例中,可以預(yù)先在CDN上設(shè)置一列表,其中包括頁面的URL或者頁面的關(guān)鍵詞等用于標(biāo)識頁面的標(biāo)記,該列表用于記錄該CDN中所具有的緩存頁面,例如,若用戶設(shè)備請求訪問的頁面的URL在該列表中有記錄,則說明該CDN中也具有相應(yīng)的緩存頁面,可以提供給該用戶設(shè)備。
從而,通過判斷是否能向所述用戶設(shè)備推送正常頁面,當(dāng)確定不能向所述用戶設(shè)備推送正常頁面時(shí),根據(jù)所述頁面訪問請求從內(nèi)容分發(fā)網(wǎng)絡(luò)CDN查找 相應(yīng)的緩存頁面,當(dāng)查得相應(yīng)的緩存頁面時(shí),向所述用戶設(shè)備推送該緩存頁面,進(jìn)一步提高了頁面推送效率,在無法推送正常頁面時(shí),同樣可以快速響應(yīng)用戶設(shè)備發(fā)送的頁面訪問請求,保證頁面的可用性,提高用戶瀏覽頁面的感受。
可選地,當(dāng)從所述CDN未查得相應(yīng)的緩存頁面時(shí),該方法還包括:
根據(jù)所述頁面訪問請求從本地或者預(yù)設(shè)的內(nèi)容管理服務(wù)器(簡稱TMS)查找相應(yīng)的緩存頁面,當(dāng)查得相應(yīng)的緩存頁面時(shí),向所述用戶設(shè)備推送該緩存頁面。
可選地,向所述用戶設(shè)備推送該緩存頁面的同時(shí),還將超文本傳輸協(xié)議狀態(tài)碼發(fā)送給所述用戶設(shè)備,其中,該超文本傳輸協(xié)議狀態(tài)碼為302。從而可以避免網(wǎng)絡(luò)瀏覽器的訪問頁面時(shí)的永久性重定向。
也就是說,若CDN中沒有相應(yīng)的緩存頁面可以提供給用戶設(shè)備,則通過其他途徑查找相應(yīng)的緩存頁面,例如,可以從應(yīng)用服務(wù)器本地、內(nèi)容管理服務(wù)器等設(shè)備上查找相應(yīng)的緩存頁面,具體的查找方法,與在CDN上查找相應(yīng)的緩存頁面的方法相同,在此不再贅述。
從而,當(dāng)從所述CDN未查得相應(yīng)的緩存頁面時(shí),根據(jù)所述頁面訪問請求從本地或者預(yù)設(shè)的內(nèi)容管理服務(wù)器查找相應(yīng)的緩存頁面,當(dāng)查得相應(yīng)的緩存頁面時(shí),向所述用戶設(shè)備推送該緩存頁面,也可以進(jìn)一步提高頁面推送效率,在無法推送正常頁面以及無法獲取CDN換成頁面時(shí),同樣可以從本地或者預(yù)設(shè)的內(nèi)容管理服務(wù)器獲取緩存頁面,實(shí)現(xiàn)快速響應(yīng)用戶設(shè)備發(fā)送的頁面訪問請求,進(jìn)一步提高了頁面的可用性。
參見圖2,當(dāng)接收到用戶設(shè)備發(fā)送的頁面訪問請求后,確定不需要執(zhí)行預(yù)設(shè)的頁面跳轉(zhuǎn)規(guī)則時(shí),本申請實(shí)施例提供的一種頁面推送方法,包括:
用戶通過瀏覽器訪問任一頁面時(shí),這時(shí)內(nèi)容服務(wù)器會(huì)去判斷當(dāng)前返回的HTTP狀態(tài)碼是多少。當(dāng)返回的HTTP狀態(tài)碼為2xx或者3xx時(shí),直接返回頁面給用戶。當(dāng)返回的HTTP狀態(tài)碼為4xx或者5xx時(shí),會(huì)先去CDN頁面上看有沒有緩存頁面,如果有,則返回CDN上的緩存頁面給用戶,如果沒有則會(huì) 判斷應(yīng)用服務(wù)器本地的靜態(tài)文件中和內(nèi)容管理服務(wù)器上是否存在相應(yīng)的緩存頁面,存在的話會(huì)先把HTTP狀態(tài)碼標(biāo)識為302,然后再把緩存頁面推送給用戶。其中的x表示任一數(shù)字。
參見圖3,本申請實(shí)施例中提供了一種網(wǎng)絡(luò)系統(tǒng)31,為一個(gè)或多個(gè)用戶設(shè)備32推送頁面。網(wǎng)絡(luò)系統(tǒng)31與用戶設(shè)備32之間可以采用多種方式進(jìn)行通信,本申請實(shí)施例不進(jìn)行限制。
可選地,該網(wǎng)絡(luò)系統(tǒng)31中包括的應(yīng)用服務(wù)器302,為具有執(zhí)行上述本申請實(shí)施例提供的頁面推送方法流程功能的頁面推送裝置。并且需要說明的是,本申請實(shí)施例提供的技術(shù)方案中,用戶設(shè)備32與應(yīng)用服務(wù)器302之間還可以存在其他設(shè)備,例如接入節(jié)點(diǎn)、交換機(jī)等設(shè)備等,本申請實(shí)施例中在描述用戶設(shè)備32與應(yīng)用服務(wù)器302之間的交互流程技術(shù)方案時(shí)省略描述了相關(guān)設(shè)備,但并不限制沒有其他設(shè)備。
該系統(tǒng)還包括:
配置中心301,用于為所述應(yīng)用服務(wù)器配置所述的頁面跳轉(zhuǎn)規(guī)則,以及,推送頁面到內(nèi)容分發(fā)網(wǎng)絡(luò)CDN、內(nèi)容管理服務(wù)器、和所述應(yīng)用服務(wù)器中;
內(nèi)容管理服務(wù)器304,用于緩存所述配置中心推送的頁面,當(dāng)接收到應(yīng)用服務(wù)器發(fā)送的來自用戶設(shè)備的頁面訪問請求時(shí),提供相應(yīng)的緩存頁面給該用戶設(shè)備;
內(nèi)容分發(fā)網(wǎng)絡(luò)CDN 303,用于緩存所述配置中心推送的頁面,當(dāng)接收到應(yīng)用服務(wù)器發(fā)送的來自用戶設(shè)備的頁面訪問請求時(shí),提供相應(yīng)的緩存頁面給該用戶設(shè)備。
因此,本申請實(shí)施例提供的技術(shù)方案,在網(wǎng)絡(luò)系統(tǒng)31中,可以通過配置中心301的定制規(guī)則,定期推送一份正常頁面到CDN 303,作為緩存頁面,同時(shí)也會(huì)定期去采集頁面的快照更新到內(nèi)容管理服務(wù)器304和應(yīng)用服務(wù)器302本地的靜態(tài)文件里,再通過推送平臺把內(nèi)容管理服務(wù)器中的緩存頁面推送到應(yīng)用中。當(dāng)頁面出現(xiàn)問題無法正常推送時(shí),會(huì)自動(dòng)去請求CDN上的緩存頁面,如 果CDN中沒有的話,會(huì)自動(dòng)將訪問頁面的請求直接跳轉(zhuǎn)到內(nèi)容管理服務(wù)器或者應(yīng)用服務(wù)器本地,即會(huì)自動(dòng)去請求內(nèi)容管理服務(wù)器或者應(yīng)用服務(wù)器本地上的緩存頁面,具體的定制規(guī)則(或者稱為頁面跳轉(zhuǎn)規(guī)則),都是可以進(jìn)行手動(dòng)地在配置中心配置或更改的。所述的配置中心,可以是一服務(wù)器或終端設(shè)備。
因此,本申請實(shí)施例通過定期推送正常頁面到CND及快照頁面保存到內(nèi)容管理服務(wù)器和應(yīng)用服務(wù)器本地的靜態(tài)文件里,這樣CDN可以先做一層保障,同時(shí)在數(shù)據(jù)問題時(shí),可以選擇性的跳轉(zhuǎn)到內(nèi)容管理服務(wù)器和應(yīng)用服務(wù)器本地的靜態(tài)文件。同時(shí),通過配置中心,可以在出現(xiàn)不同問題時(shí),定制特定的處理方式,在頁面出現(xiàn)問題時(shí),可以非常方便的進(jìn)行修復(fù),保證用戶體驗(yàn),同時(shí)也給問題修復(fù)提供了足夠時(shí)間。
需要說明的是,本申請實(shí)施例提供的網(wǎng)絡(luò)系統(tǒng)中,還可以包括更多個(gè)與應(yīng)用服務(wù)器、內(nèi)容管理服務(wù)器等相類似的其他服務(wù)器,或者具有其他功能的服務(wù)器等設(shè)備,本申請實(shí)施例并不做限制。
與上述頁面推送方法相對應(yīng)地,參見圖4,本申請實(shí)施例提供的一種頁面推送裝置,包括:
接收單元11,用于接收用戶設(shè)備發(fā)送的頁面訪問請求;
該接收單元,例如可以是收發(fā)器。
處理單元12,用于根據(jù)所述頁面訪問請求,當(dāng)確定需要執(zhí)行預(yù)設(shè)的頁面跳轉(zhuǎn)規(guī)則時(shí),按照該頁面跳轉(zhuǎn)規(guī)則,向所述用戶設(shè)備推送頁面。
該處理單元,例如可以是處理器等模塊。
通過該裝置,在接收單元接收用戶設(shè)備發(fā)送的頁面訪問請求后,處理單元根據(jù)所述頁面訪問請求,當(dāng)確定需要執(zhí)行預(yù)設(shè)的頁面跳轉(zhuǎn)規(guī)則時(shí),按照該頁面跳轉(zhuǎn)規(guī)則,向所述用戶設(shè)備推送頁面,從而實(shí)現(xiàn)了可定制的頁面推送,即可以按照用戶設(shè)備發(fā)送的頁面訪問請求所對應(yīng)的頁面跳轉(zhuǎn)規(guī)則,向所述用戶設(shè)備推送頁面,提高頁面推送效率以及用戶的頁面瀏覽體驗(yàn)。
可選地,所述處理單元還用于:當(dāng)確定不需要執(zhí)行預(yù)設(shè)的頁面跳轉(zhuǎn)規(guī)則 時(shí),根據(jù)所述頁面訪問請求,當(dāng)確定不能向所述用戶設(shè)備推送正常頁面時(shí),根據(jù)所述頁面訪問請求從內(nèi)容分發(fā)網(wǎng)絡(luò)CDN查找相應(yīng)的緩存頁面,當(dāng)查得相應(yīng)的緩存頁面時(shí),向所述用戶設(shè)備推送該緩存頁面。
從而,通過處理單元判斷是否能向所述用戶設(shè)備推送正常頁面,當(dāng)確定不能向所述用戶設(shè)備推送正常頁面時(shí),根據(jù)所述頁面訪問請求從內(nèi)容分發(fā)網(wǎng)絡(luò)CDN查找相應(yīng)的緩存頁面,當(dāng)查得相應(yīng)的緩存頁面時(shí),向所述用戶設(shè)備推送該緩存頁面,進(jìn)一步提高了頁面推送效率,在無法推送正常頁面時(shí),同樣可以快速響應(yīng)用戶設(shè)備發(fā)送的頁面訪問請求,保證頁面的可用性。
可選地,所述處理單元還用于:當(dāng)從所述CDN未查得相應(yīng)的緩存頁面時(shí),根據(jù)所述頁面訪問請求從本地或者預(yù)設(shè)的內(nèi)容管理服務(wù)器查找相應(yīng)的緩存頁面,當(dāng)查得相應(yīng)的緩存頁面時(shí),向所述用戶設(shè)備推送該緩存頁面。
從而,當(dāng)處理單元從所述CDN未查得相應(yīng)的緩存頁面時(shí),處理單元還可以根據(jù)所述頁面訪問請求從本地或者預(yù)設(shè)的內(nèi)容管理服務(wù)器查找相應(yīng)的緩存頁面,當(dāng)查得相應(yīng)的緩存頁面時(shí),向所述用戶設(shè)備推送該緩存頁面,也可以進(jìn)一步提高頁面推送效率,在無法推送正常頁面以及無法獲取CDN換成頁面時(shí),同樣可以從本地或者預(yù)設(shè)的內(nèi)容管理服務(wù)器獲取緩存頁面,實(shí)現(xiàn)快速響應(yīng)用戶設(shè)備發(fā)送的頁面訪問請求,進(jìn)一步提高了頁面的可用性。
可選地,所述處理單元還用于:當(dāng)確定能向所述用戶設(shè)備推送正常頁面時(shí),向所述用戶設(shè)備推送正常頁面。
可選地,所述處理單元通過如下方式判斷是否能向所述用戶設(shè)備推送正常頁面:
根據(jù)所述頁面訪問請求返回的超文本傳輸協(xié)議狀態(tài)碼,判斷是否能向所述用戶設(shè)備推送正常頁面。
可選地,當(dāng)所述超文本傳輸協(xié)議狀態(tài)碼為預(yù)設(shè)的正常值時(shí),所述處理單元確定能向所述用戶設(shè)備推送正常頁面,否則,確定不能向所述用戶設(shè)備推送正常頁面。
可選地,所述處理單元向所述用戶設(shè)備推送該緩存頁面的同時(shí),還將超文本傳輸協(xié)議狀態(tài)碼發(fā)送給所述用戶設(shè)備,其中,該超文本傳輸協(xié)議狀態(tài)碼為302。
可選地,所述處理單元具體用于:
根據(jù)所述頁面訪問請求中攜帶的統(tǒng)一資源定位符URL,查找預(yù)設(shè)的頁面跳轉(zhuǎn)規(guī)則,當(dāng)該頁面跳轉(zhuǎn)規(guī)則中存在所述URL對應(yīng)的強(qiáng)制跳轉(zhuǎn)頁面時(shí),將該強(qiáng)制跳轉(zhuǎn)頁面推送給所述用戶設(shè)備。
可選地,所述的頁面推送裝置為應(yīng)用服務(wù)器。
綜上所述,本申請實(shí)施例旨在構(gòu)建統(tǒng)一管理和維護(hù)頁面高可用,保證在出現(xiàn)問題時(shí),能快速響應(yīng),保證頁面的可用性。避免頁面元素或者后臺出現(xiàn)異常時(shí),頁面出現(xiàn)錯(cuò)誤,或者直接出現(xiàn)4xx、5xx等頁面。并且,本申請實(shí)施例提供一套完善的配置中心,可以定制頁面出現(xiàn)問題時(shí)的處理方案,包括預(yù)設(shè)頁面跳轉(zhuǎn)規(guī)則等定制方案。避免頁面出現(xiàn)問題時(shí),要手工去修復(fù),并且修復(fù)時(shí)間長,用這套方案,可實(shí)現(xiàn)快速修復(fù)的功能。
本領(lǐng)域內(nèi)的技術(shù)人員應(yīng)明白,本申請的實(shí)施例可提供為方法、系統(tǒng)、或計(jì)算機(jī)程序產(chǎn)品。因此,本申請可采用完全硬件實(shí)施例、完全軟件實(shí)施例、或結(jié)合軟件和硬件方面的實(shí)施例的形式。而且,本申請可采用在一個(gè)或多個(gè)其中包含有計(jì)算機(jī)可用程序代碼的計(jì)算機(jī)可用存儲(chǔ)介質(zhì)(包括但不限于磁盤存儲(chǔ)器和光學(xué)存儲(chǔ)器等)上實(shí)施的計(jì)算機(jī)程序產(chǎn)品的形式。
本申請是參照根據(jù)本申請實(shí)施例的方法、設(shè)備(系統(tǒng))、和計(jì)算機(jī)程序產(chǎn)品的流程圖和/或方框圖來描述的。應(yīng)理解可由計(jì)算機(jī)程序指令實(shí)現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合??商峁┻@些計(jì)算機(jī)程序指令到通用計(jì)算機(jī)、專用計(jì)算機(jī)、嵌入式處理機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器以產(chǎn)生一個(gè)機(jī)器,使得通過計(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è)方框中指定的功能的步驟。
顯然,本領(lǐng)域的技術(shù)人員可以對本申請進(jìn)行各種改動(dòng)和變型而不脫離本申請的精神和范圍。這樣,倘若本申請的這些修改和變型屬于本申請權(quán)利要求及其等同技術(shù)的范圍之內(nèi),則本申請也意圖包含這些改動(dòng)和變型在內(nèi)。