一種域名資源緩存方法及裝置與流程
2023-06-18 06:52:46 2

本發明涉及通信技術領域,尤其是涉及一種域名資源緩存方法及裝置。
背景技術:
目前,移動網際網路和網際網路產業處於高速發展的時期,各種網絡應用、應用(application,app)層出不窮,網際網路已成為時代的代名詞。特別是進入第四代通信時代後,用於上網習慣正在從電腦端向移動的設備端遷移,而用戶也對網絡質量的優劣更加的敏感。
一般情況下,如果用戶訪問的網際網路資源都在用戶所在運營商網內,訪問質量往往較好。但對於內容資源不夠豐富的運營商來說,用戶訪問的很多資源需要跨網獲取,這樣容易受到網間帶寬等多種因素影響,導致訪問質量較差。目前,引入緩存(cache)系統是資源劣勢運營商彌補劣勢,cache系統可以實現網外資源的本網緩存,使相關資源快速實現本地化,提升用戶的上網感知。而實現方法較為簡單,只需要通過將網外資源對應的域名加入cache白名單,即可實現資源的快速引入。而哪些域名可以加入cache緩存白名單目前有兩種方式:
第一種方式:被動方式。
在上述第一種方式中,通過用戶投訴的方式,確定白名單。用戶投訴域名訪問情況不佳,測試後發現域名對應的ip地址在網外,且埠不是特殊埠,即將該域名加入緩存白名單進行緩存。
第二種方式:主動方式。
上述第二種方式中,定期對全網域名訪問量進行統計,對域名資源分布進行評估,針對訪問量排名符合要求的域名資源,將ip地址對應為網外且訪問 無特殊埠的域名加入緩存白名單。
在上述兩種方式中,如果出現某些域名不允許緩存,例如該域名中含有web動態資源。如果被緩存,將出現域名無法訪問的情況,反而會更加影響訪問質量,目前還沒有提出一種有效地解決方案,對域名資源是否可以緩存進行判斷。
技術實現要素:
本發明提供了一種域名資源緩存方法及裝置,可以有效對域名資源是否可以緩存進行判斷。
一種域名資源緩存方法,包括在需要對域名進行緩存時,獲得所述域名包含的資源類型;按照預先建立的資源模型,在確定出所述資源類型不符合設定規則時,不緩存所述域名。
按照下述方式預先建立資源模型:獲得上網日誌中的包含資源類型的統一資源定位符url及對應的域名;對所述url中的資源類型進行聚類,獲得所述域名下的全部資源類型;將獲得的全部資源類型和域名對應存儲作為資源模型。
對所述url中的資源類型進行聚類,獲得所述域名下的全部資源類型,包括:將所述url翻轉;按照設定字母將翻轉後的url進行聚類;翻轉聚類完成的url,獲得所述域名下的全部資源類型。
所述設定字母包含設定字母的數量、設定字母的組合。
所述預先建立的資源模型根據網上日誌,按照設定時間進行更新。
一種域名資源緩存裝置,包括:獲得模塊,用於在需要對域名進行緩存時,獲得所述域名包含的資源類型;執行模塊,用於按照預先建立的資源模型,在確定出所述資源類型不符合設定規則時,不緩存所述域名。
所述執行模塊,具體用於按照下述方式預先建立資源模型:獲得上網日誌中的包含資源類型的統一資源定位符url及對應的域名;對所述url中的資 源類型進行聚類,獲得所述域名下的全部資源類型;將獲得的全部資源類型和域名對應存儲作為資源模型。
所述執行模塊,具體用於將所述url翻轉;按照設定字母將翻轉後的url進行聚類;翻轉聚類完成的url,獲得所述域名下的全部資源類型。
所述執行模塊中的所述設定字母包含設定字母的數量、設定字母的組合。
所述執行模塊預先建立的資源模型根據網上日誌,按照設定時間進行更新。
通過採用上述技術方案,預先建立資源模型,在需要對域名進行緩存時,根據預先建立的資源模型進行評估,在確定出資源類型不符合設定規則時,不緩存所述域名,從而有效的實現對域名資源是否可以進行緩存進行判斷。
附圖說明
圖1為本發明實施例中,提出的域名資源緩存方法流程圖;
圖2為本發明實施例中,提出的資源模型建立方法流程圖;
圖3為本發明實施例中,提出的域名資源緩存裝置結構組成示意圖。
具體實施方式
下面將結合各個附圖對本發明實施例技術方案的主要實現原理、具體實施方式及其對應能夠達到的有益效果進行詳細地闡述。
本發明實施例提出了一種域名資源緩存方法,如圖1所示,其具體處理流程如下述:
步驟10,對上網日誌進行統計,預先建立資源模型。
如圖2所示,建立資源模型的具體處理方式如下述:
步驟21,獲得上網日誌中的包含資源類型的url及對應的域名。
步驟22,對url中的資源類型進行聚類,獲得域名下的全部資源類型。
將url翻轉,按照設定字母將翻轉後的url進行聚類,翻轉聚類完成的 url,獲得域名下的全部資源類型。
其中設定字母包含設定字母的數量、設定字母的組合。
步驟23,將獲得的全部資源類型和域名對應存儲作為資源模型。
舉一實例進行詳細闡述:
通信運營商會存有較多的用戶上網日誌,該些上網日誌可以按照設定的時間進行存儲。例如,按照每天的時間對存儲的上網日誌進行統計,每天可統計的上網日誌達50億條。在上網日誌中,存儲有詳細的統一資源定位器(uniformresourelocator,url)。
其中url是對可以從網際網路上得到的資源的位置和訪問方法的一種簡潔的表示,是網際網路上標準資源的地址。網際網路上的每個文件都有一個唯一的url,它包含的信息指出文件的位置以及瀏覽器應該怎麼處理它。
本發明實施例提出的技術方案中,通過存儲的url可實現對資源類型的定位,例如,某一url為:
http://n.sinaimg.cn/auto/20151113/wqig-fxkszhk0227314.jpg。
在上述url中,n.sinaimg.cn為域名,wqig-fxkszhk0227314.jpg顯示該域名n.sinaimg.cn具有的資源類型為jpg類圖片資源。
通過並行處理方式對存儲的上網日誌中的url進行全量獲取,具體實施方式為:
將存儲的上網日誌進行切片,分成小的存儲區塊,並轉化為mr任務進行並行處理,提取全量包含資源類型信息的url及相應域名。舉一例進行詳細闡述,假設獲得的域名及對應的資源類型如下述:
www.sina.com.cnwww.sina.com.cn/test/1.jpg
www.sina.com.cnwww.sina.com.cn/test/2.css
www.sina.com.cnwww.sina.com.cn/test/3.gif
www.sohu.comwww.sohu.com/test/1.img
www.sohu.comwww.sohu.com/test/3.gif
www.sohu.comwww.sohu.com/test/2.jpg
在得到全量域名及相應資源類型信息數據後,需要對域名資源類型進行聚類。首先對url進行反轉,即將url變換為:
gpj.1/tset/nc.moc.anis.www
ssc.2/tset/nc.moc.anis.www
fig.3/tset/nc.moc.anis.www
gmi.1/test/com.uhos.www
fig.3/test/com.uhos.www
gpj.2/test/com.uhos.www
在完成翻轉後,以前三個字母進行排序並進行匯聚,匯聚完成後即可得到主域名下的全部資源類型。如:
www.sina.com.cnjpgcssgif
www.sohu.comjpgimggif
將域名和域名資源對應存儲,建立資源模型。
本發明實施例提出的技術方案中,url中標識資源類型一般是url的後三位,但由於url並不規則,且數據量巨大,為了更好的對類型進行聚類,實現對資源類型的快速統計,通過將url進行翻轉之後再聚類,可以降低計算量,節省處理資源。
在本發明實施例提出的技術方案中,預先建立的資源模型根據網上日誌,按照設定時間進行更新。例如可以每天計算一次進行動態更新。
步驟11,在需要對域名進行緩存時,獲得域名包含的資源類型。
步驟12,按照預先建立的資源模型,在確定出資源類型不符合設定規則時,不緩存該域名。
例如,當有域名需要評估cache可緩存性時,從資源模型中提取相關域名資源類型,即可根據主域名包含的資源類型實現資源評估,例如發現域名具有css等資源類型,則不進行緩存。
相應地,本發明實施例還提出一種域名資源緩存裝置,如圖3所示,包括:
獲得模塊301,用於在需要對域名進行緩存時,獲得所述域名包含的資源類型。
執行模塊302,用於按照預先建立的資源模型,在確定出所述資源類型不符合設定規則時,不緩存所述域名。
具體地,上述執行模塊302,具體用於按照下述方式預先建立資源模型:獲得上網日誌中的包含資源類型的統一資源定位符url及對應的域名;對所述url中的資源類型進行聚類,獲得所述域名下的全部資源類型;將獲得的全部資源類型和域名對應存儲作為資源模型。
具體地,上述執行模塊302,具體用於將所述url翻轉;按照設定字母將翻轉後的url進行聚類;翻轉聚類完成的url,獲得所述域名下的全部資源類型。
具體地,上述執行模塊302中的所述設定字母包含設定字母的數量、設定字母的組合。
具體地,上述執行模塊302預先建立的資源模型根據網上日誌,按照設定時間進行更新。
上述本發明實施例提出的域名資源緩存裝置,其具體實施方式請參見上述方法實施例中的詳細闡述,這裡不再贅述。
針對通常情況下域名資源加入cache緩存方法,如果出現某些域名實際不允許緩存,比如該域名為加密訪問,或域名中還有web動態資源,如果被緩存,將出現域名無法訪問的情況,反而會更加影響訪問質量,本發明實施例上述提出的技術方案中,可以有效規避以上問題,提高cache緩存的有效性和準確性,從而有效提升網際網路訪問質量。
其次,本發明實施例上述提出的技術方案中,根據海量上網日誌數據進行域名動態全量資源模型的建立,充分利用運營商客戶多、上網日誌量大的特點,實現對域名資源的近似全量抽樣。
再次,上網日誌每天都會產生,從而可以實現對域名全量資源模型的動態 刷新,實時跟蹤域名資源類型狀態。
本領域的技術人員應明白,本發明的實施例可提供為方法、裝置(設備)、或電腦程式產品。因此,本發明可採用完全硬體實施例、完全軟體實施例、或結合軟體和硬體方面的實施例的形式。而且,本發明可採用在一個或多個其中包含有計算機可用程序代碼的計算機可用存儲介質(包括但不限於磁碟存儲器、只讀光碟、光學存儲器等)上實施的電腦程式產品的形式。
本發明是參照根據本發明實施例的方法、裝置(設備)和電腦程式產品的流程圖和/或方框圖來描述的。應理解可由電腦程式指令實現流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結合。可提供這些電腦程式指令到通用計算機、專用計算機、嵌入式處理機或其他可編程數據處理設備的處理器以產生一個機器,使得通過計算機或其他可編程數據處理設備的處理器執行的指令產生用於實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的裝置。
這些電腦程式指令也可存儲在能引導計算機或其他可編程數據處理設備以特定方式工作的計算機可讀存儲器中,使得存儲在該計算機可讀存儲器中的指令產生包括指令裝置的製造品,該指令裝置實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能。
這些電腦程式指令也可裝載到計算機或其他可編程數據處理設備上,使得在計算機或其他可編程設備上執行一系列操作步驟以產生計算機實現的處理,從而在計算機或其他可編程設備上執行的指令提供用於實現在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。
儘管已描述了本發明的優選實施例,但本領域內的技術人員一旦得知了基本創造性概念,則可對這些實施例作出另外的變更和修改。所以,所附權利要求意欲解釋為包括優選實施例以及落入本發明範圍的所有變更和修改。
顯然,本領域的技術人員可以對本發明進行各種改動和變型而不脫離本發明的精神和範圍。這樣,倘若本發明的這些修改和變型屬於本發明權利要求及 其等同技術的範圍之內,則本發明也意圖包含這些改動和變型在內。