專利名稱:一種優(yōu)化方法和優(yōu)化服務器的制作方法
技術領域:
本發(fā)明涉及網(wǎng)站優(yōu)化技術,尤其涉及一種優(yōu)化方法和優(yōu)化服務器。
背景技術:
目前,在網(wǎng)站服務過程中,用戶打開網(wǎng)站首頁,一般需要幾十甚至上百個對象獲取,在獲取對象過程中通過瀏覽器加載,用戶才能看到展開的頁面。對于小部分網(wǎng)站來說,他們具備可以對網(wǎng)站進行深入優(yōu)化的能力,以使網(wǎng)站的服務效果得到很大提升。但是對于大部分網(wǎng)站來說,他們并不具備這些專業(yè)技能來改善他們網(wǎng)站的服務質量,甚至,有些網(wǎng)站在優(yōu)化的過程中,由于技術能力不足,還會導致網(wǎng)站不能服務等更嚴重的問題?,F(xiàn)有技術大多只能評測出網(wǎng)站可以做什么優(yōu)化并給出建議,但是優(yōu)化的操作還需要網(wǎng)站運營者自行實現(xiàn)。但是由于網(wǎng)站一般都是7*24小時在給用戶提供服務的,而各種優(yōu)化的操作都比較繁瑣并且可能由于操作不當而導致服務器宕機,這對于網(wǎng)站運營者來說是一種噩夢,所以,大部分網(wǎng)站運營者只能看著各種優(yōu)化建議,但是并不敢做任何的實際操作。本發(fā)明的方法和代理服務器能夠解決上述問題,使大部分網(wǎng)站運營者不需要具備專業(yè)的技能就可以進行網(wǎng)站的深度優(yōu)化。
發(fā)明內容
有鑒于此,本發(fā)明實施例提供了一種優(yōu)化方法和優(yōu)化服務器,能夠在不改變任何網(wǎng)站內容以及不降低網(wǎng)民的訪問感受的情況下,對網(wǎng)站內容進行優(yōu)化,并能夠通過合理增加用戶和服務器的連接、減小網(wǎng)站內容的大小、減少二次訪問用戶需要獲取的對象、改善加載順序等方法,大幅度改善網(wǎng)民的訪問體驗。第一方面提供了一種優(yōu)化方法,包括:步驟一:當接收到被引導的用戶訪問時,判斷所述用戶要訪問的源站的內容是動態(tài)內容還是靜態(tài)內容,如果是動態(tài)內容,獲取所述用戶要訪問的源站的內容,并判斷獲取的內容是否可以進行實時的優(yōu)化,如果可以進行實時的優(yōu)化,則將其優(yōu)化后提供給用戶,結束本次優(yōu)化,如果不能進行實時的優(yōu)化,則直接提供給用戶,結束本次優(yōu)化;如果是靜態(tài)內容,則轉入步驟二;步驟二:判斷是否存儲有所述用戶要訪問的源站的內容:如果沒有存儲用戶要訪問的源站的內容,獲取所述用戶要訪問的源站的內容,進入步驟三;如果存儲有所述用戶要訪問的源站內容,判斷存儲的內容中是否有經(jīng)過優(yōu)化的內容:如果存儲的內容中有經(jīng)過優(yōu)化的內容,則將所述經(jīng)過優(yōu)化的內容作為待處理的內容,轉入步驟四;如果存儲的內容中沒有經(jīng)過優(yōu)化的內容,則將未經(jīng)過優(yōu)化的內容作為待處理的內容,轉入步驟四;步驟三:判斷獲 取的內容是否可以進行實時的優(yōu)化,如果可以進行實時的優(yōu)化,則將其優(yōu)化后提供給用戶并存儲,結束本次優(yōu)化;如果不可以進行實時的優(yōu)化,則將其提供給用戶并存儲,然后轉入步驟六;
步驟四:判斷所述待處理的內容是否超過生存期,如果沒有超過生存期,則將其發(fā)送給用戶,并結束本次優(yōu)化;如果超過生存期,則轉入步驟五;步驟五:判斷源站的內容是否有更新,如果源站的內容沒有更新,則將所述待處理的內容發(fā)送給用戶并將其生存時間重置為0,結束本次優(yōu)化;如果源站的內容有更新,則刪除所述待處理的內容,獲取更新的內容,然后轉入步驟三:步驟六:對不能進行實時的優(yōu)化的的內容進行后臺的優(yōu)化,并對經(jīng)過后臺的優(yōu)化的內容進行存儲,結束本次優(yōu)化。在第一種可能的實現(xiàn)方式中,所述優(yōu)化包括:對內容進行自適應壓縮;刪除內容中的無效文件;刪除內容中的代碼類文件中的無效部分;壓縮內容中的URL長度;根據(jù)用戶的需要,設置內容中的圖片文件的大小;根據(jù)用戶設備的類型,進行重新排版;壓縮內容中的圖片文件、視頻文件;合并內容中的元素以減少請求次數(shù);控制內容的并發(fā)量以達到合理的并發(fā)請求量;判斷用戶瀏覽器是否支`持SPDY協(xié)議,如果支持,則開啟內容的SPDY傳輸,否則,不開啟內容的SPDY傳輸;對內容啟用keepalive,并根據(jù)所述源站的類型,設置相應的超時時間;對內容的url進行替換以使用戶能夠實時獲取更新內容;對內容中的元素的存儲時間和加載順序進行優(yōu)化設置;根據(jù)內容中的css或html,設置內容中的圖片的尺寸;將文件格式和字符集的類型加入內容的http頭部;刪除內容中的空的src、空的href以及無效的HTTP響應頭部;隔離針對內容中的靜態(tài)內容的用戶請求的cookie ;增加內容中的必要的HTTP響應頭部。結合第一方面或第一方面的第一種可能的實現(xiàn)方式,在第一方面的第二種可能的實現(xiàn)方式中,所述判斷獲取的內容是否可以進行實時的優(yōu)化是通過負載、CPU使用率數(shù)據(jù)并結合所述獲取的內容的大小和類型來判斷。第二方面提供了一種優(yōu)化服務器,包括第一判斷模塊、第二判斷模塊、第三判斷模塊、第四判斷模塊、第五判斷模塊、優(yōu)化模塊以及存儲模塊,其中,第一判斷模塊,用于當接收到被引導的用戶訪問時,判斷所述用戶要訪問的源站的內容是動態(tài)內容還是靜態(tài)內容,如果是動態(tài)內容,獲取所述用戶要訪問的源站的內容,并判斷獲取的內容是否可以進行實時的優(yōu)化,如果可以進行實時的優(yōu)化,則將其優(yōu)化后提供給用戶,結束本次優(yōu)化,如果不能進行實時的優(yōu)化,則直接提供給用戶,結束本次優(yōu)化;如果是靜態(tài)內容,啟動第二判斷模塊;第二判斷模塊,用于判斷存儲模塊是否存儲有所述用戶要訪問的源站的內容:如果沒有存儲用戶要訪問的源站的內容,獲取所述用戶要訪問的源站的內容,并發(fā)送給第三判斷模塊;如果存儲有所述用戶要訪問的源站內容,判斷存儲的內容中是否有經(jīng)過優(yōu)化的內容:如果存儲的內容中有經(jīng)過優(yōu)化的內容,則將所述經(jīng)過優(yōu)化的內容作為待處理的內容,啟動第四判斷模塊;如果存儲的內容中沒有經(jīng)過優(yōu)化的內容,則將未經(jīng)過優(yōu)化的內容作為待處理的內容,啟動第四判斷模塊;第三判斷模塊:用于接收第二判斷模塊、第五判斷模塊發(fā)送的內容,判斷接收的內容是否可以進行實時的優(yōu)化,如果可以,則將其優(yōu)化后提供給用戶并存儲于存儲模塊,結束本次優(yōu)化;如果不可以進行實時的優(yōu)化,則將其提供給用戶并存儲于存儲模塊,以及將其發(fā)送給優(yōu)化模塊;第四判斷模塊:用于判斷存儲模塊中的所述待處理的內容是否超過生存期,如果沒有超過生存期,則將其發(fā)送給用戶,并結束本次優(yōu)化;如果超過生存期,則啟動第五判斷模塊;第五判斷模塊:用于判斷源站的內容是否有更新,如果源站的內容沒有更新,則將存儲模塊中存儲的所述待處理的內容發(fā)送給用戶并將其生存時間重置為0,結束本次優(yōu)化;如果源站的內容有更新,獲取源站的更新的內容,則刪除存儲模塊中所述待處理的內容,然后將獲取的更新的內容發(fā)送給第三判斷模塊;優(yōu)化模塊:用于接收第三判斷模塊發(fā)送的內容,并對其進行后臺的優(yōu)化,將經(jīng)過后臺的優(yōu)化的內容存儲于存儲模塊,結束本次優(yōu)化。在第二方面的第一種可能的實現(xiàn)方式中,所述第一判斷模塊、第三判斷模塊和優(yōu)化模塊進行的優(yōu)化,包括以下操作: 對內容進行自適應壓縮;刪除內容中的無效文件;刪除內容中的代碼·類文件中的無效部分;壓縮內容中的URL長度;根據(jù)用戶的需要,設置內容中的圖片文件的大??;根據(jù)用戶設備的類型,進行重新排版;壓縮內容中的圖片文件、視頻文件;合并內容中的元素以減少請求次數(shù);控制內容的并發(fā)量以達到合理的并發(fā)請求量;判斷用戶瀏覽器是否支持SPDY協(xié)議,如果支持,則開啟內容的SPDY傳輸,否則,不開啟內容的SPDY傳輸;對內容啟用keepalive,并根據(jù)所述源站的類型,設置相應的超時時間;對內容的url進行替換以使用戶能夠實時獲取更新內容;對內容中的元素的存儲時間和加載順序進行優(yōu)化設置;根據(jù)內容中的css或html,設置內容中的圖片的尺寸;將文件格式和字符集的類型加入內容的http頭部;刪除內容中的空的src、空的href以及無效的HTTP響應頭部;隔離針對內容中的靜態(tài)內容的用戶請求的cookie ;增加內容中的必要的HTTP響應頭部。結合第二方面或第二方面的第一種可能的實現(xiàn)方式,在第二方面的第二種可能的實現(xiàn)方式中,所述第一判斷模塊和第三判斷模塊是通過負載、CPU使用率數(shù)據(jù)并結合內容的大小和類型來判斷是否可以對內容進行實時的優(yōu)化。結合第二方面的第二種可能的實現(xiàn)方式,在第二方面的第三種可能的實現(xiàn)方式中,所述優(yōu)化服務器是由單臺服務器構成,或是由多臺服務器組成的服務器群構成。由上述技術方案可知,本發(fā)明通過判斷是否存儲有用戶要訪問的源站的內容以及判斷源站的內容是否已經(jīng)更新以確定對用戶要訪問的內容是否進行優(yōu)化,從而能夠在不改變任何網(wǎng)站內容以及不降低網(wǎng)民的訪問感受的情況下,對網(wǎng)站內容進行優(yōu)化,此外,本發(fā)明通過合理增加用戶和服務器的連接、減小網(wǎng)站內容的大小、減少二次訪問用戶需要獲取的對象、改善加載順序等方法,大幅度改善網(wǎng)民的訪問體驗。
為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術中的方案,下面將對實施例中所需要使用的附圖作一簡單地介紹,顯而易見地,下面描述中的附圖是本發(fā)明的一些實施例,對于本領域普通技術人員而言,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。圖1為本發(fā)明一實施例提供的優(yōu)化方法的流程示意圖;圖2為為本發(fā)明一實施例提供的優(yōu)化服務器的結構示意圖。
具體實施例方式
為使本發(fā)明實施例的目的、技術方案和優(yōu)點更加清楚,下面將結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整的描述,顯然,所描述的實施例是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領域普通技術人員在沒有做出創(chuàng)造性勞動的前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。圖1為本發(fā)明一實施例提供的優(yōu)化方法的流程示意圖,如圖1所示,本實施例的優(yōu)化方法可以包括:步驟一:當接收到被引導的用戶訪問時,判斷所述用戶要訪問的源站的內容是動態(tài)內容還是靜態(tài)內容,如果是動態(tài)內容,獲取所述用戶要訪問的源站的內容,并判斷獲取的內容是否可以進行實時的優(yōu)化,如果可以進行實時的優(yōu)化,則將其優(yōu)化后提供給用戶,結束本次優(yōu)化,如果不能進行實時的優(yōu)化,則直接提供給用戶,結束本次優(yōu)化;如果是靜態(tài)內容,則轉入步驟二;其中,對內容進行實時的優(yōu)化,包括以下操作:對內容進行自適應壓縮;刪除內容中的無效文件;可以通過對用戶的瀏覽器進行模擬發(fā)現(xiàn)源站內容中沒有被引用或者沒有被調用的無效文件。刪除內容中的代碼類文件中的無效部分;例如,可以去除代碼類文件中的不必要的格式、注釋、換行符等無效部分。壓縮內容中的URL長度;根據(jù)用戶的需要,設置內容中的圖片文件的大小;例如,如果用戶需要一個10*50大小的圖片,而源站提供的圖片的大小是1000*5000,這時,可以通過將圖片直接設置成10*50的大小來較小需要傳輸?shù)臄?shù)據(jù)量并且不對用戶的瀏覽效果產生任何影響。根據(jù)用戶設備的類型,進行重新排版;其中,用戶設備的類型可以是手機、ipad、電腦等。
壓縮內容中的圖片文件、視頻文件;合并內容中的元素以減少請求次數(shù);控制內容的并發(fā)量以達到合理的并發(fā)請求量;例如,如果用戶訪問的源站網(wǎng)頁有100多個url,但是只有一個域名,受瀏覽器限制,只能有6個并發(fā),這時可以將源站的域名拆分為4個域名,使其可以達到24個并發(fā),以提高并發(fā)量;如果源站網(wǎng)頁的域名有30個,由于每個域名都需要DNS請求,這時可以將域名壓縮為6個,以減少請求時間。判斷用戶瀏覽器是否支持SPDY協(xié)議,如果支持,則開啟內容的SPDY傳輸,否則,不開啟內容的SPDY傳輸;由于SPDY協(xié)議的傳輸效率較高,所以可以針對用戶的瀏覽器,確定其是否支持SPDY協(xié)議,如果支持,就使用SPDY協(xié)議進行傳輸,從而能夠大大提高傳輸效率。對內容啟用ke印alive,并根據(jù)所述源站的類型,設置相應的超時時間;其中,由于開啟ke印alive后,會帶來性能的消耗,所以會設置相應的超時時間,到了時間后,如果還沒有數(shù)據(jù)交互,就會斷開連接??蛇x地,可以根據(jù)源站的類型來進行超時時間的設置,例如,新聞類源站,用戶一般停留的時間較短,可以將超時時間設置為IOs;而電子商務類源站,用戶一般停留的時間較長,可以將超時時間設置為30s。對內容的url進行替換以使用戶能夠實時獲取更新內容;例如,可以對內容的url和其獲取時間進行hash計算,形成一個新的url,一旦出現(xiàn)url變更或被修改,都會形成一個新的url,從而使用戶可以立刻獲取到更新內容。對內容中的元素的存儲時間和加載順序進行優(yōu)化設置;例如,可以將CSS置頂,使用戶最先下載CSS文件,從而使得用戶可以最快地看到頁面的展示;可以將js置低,從而不會因加載js而延長網(wǎng)頁的展示時間。根據(jù)內容中的css或html,設置內容中的圖片的尺寸;將文件格式和字符集的類型加入內容的http頭部;刪除內容中的空的src、空的href以及無效的HTTP響應頭部;隔離針對內容中的靜態(tài)內容的用戶請求的cookie ;增加內容中的必要的HTTP響應頭部??蛇x地,所述的用戶要訪問的源站的內容可以是一個url對應的內容。步驟二:判斷是否存儲有所述用戶要訪問的源站的內容:如果沒有存儲用戶要訪問的源站的內容,獲取所述用戶要訪問的源站的內容,進入步驟三;如果存儲有所述用戶要訪問的源站內容,判斷存儲的內容中是否有經(jīng)過優(yōu)化的內容:如果存儲的內容中有經(jīng)過優(yōu)化的內容,則將所述經(jīng)過優(yōu)化的內容作為待處理的內容,轉入步驟四;如果存儲的內容中沒有經(jīng)過優(yōu)化的內容,則將未經(jīng)過優(yōu)化的內容作為待處理的內容,轉入步驟四;其中,所述判斷存儲的內容中是否有經(jīng)過優(yōu)化的內容,是將存儲的所述用戶要訪問的源站內容作為判斷內容。步驟三:判斷獲取的內容是否可以進行實時的優(yōu)化,如果可以進行實時的優(yōu)化,則將其優(yōu)化后提供給用戶并存儲,結束本次優(yōu)化;如果不可以進行實時的優(yōu)化,則將其提供給用戶并存儲,然后轉入步驟六;其中,本步驟中的優(yōu)化操作和步驟一中的優(yōu)化操作相同。
可選地,可以通過獲取負載、cpu使用率數(shù)據(jù)并結合所述獲取的內容的大小和類型來判斷獲取的內容是否可以進行實時的優(yōu)化。步驟四:判斷所述待處理的內容是否超過生存期,如果沒有超過生存期,則將其發(fā)送給用戶,并結束本次優(yōu)化;如果超過生存期,則轉入步驟五;步驟五:判斷源站的內容是否有更新,如果源站的內容沒有更新,則將所述待處理的內容發(fā)送給用戶并將其生存時間重置為0,結束本次優(yōu)化;如果源站的內容有更新,則刪除所述待處理的內容,獲取更新的內容,然后轉入步驟三:步驟六:對不能進行實時的優(yōu)化的的內容進行后臺的優(yōu)化,并對經(jīng)過后臺的優(yōu)化的內容進行存儲,結束本次優(yōu)化。其中,本步驟中的優(yōu)化操作和步驟一中的優(yōu)化操作相同。本實施例的方法通過判斷是否存儲有用戶要訪問的源站的內容以及判斷源站的內容是否已經(jīng)更新以確定對用戶要訪問的內容是否進行優(yōu)化,從而能夠在不改變任何網(wǎng)站內容以及不降低網(wǎng)民的訪問感受的情況下,對網(wǎng)站內容進行優(yōu)化,此外,本發(fā)明通過合理增加用戶和服務器的連接、減小網(wǎng)站內容的大小、減少二次訪問用戶需要獲取的對象、改善加載順序等方法,大幅度改善網(wǎng)民的訪問體驗。圖2為本發(fā)明另一實施例提供的優(yōu)化服務器20的結構示意圖,如圖2所示,本實施例的優(yōu)化服務器20可以包括第一判斷模塊201、第二判斷模塊202、第三判斷模塊203、第四判斷模塊204、第五判斷模塊205、優(yōu)化模塊206以及存儲模塊207,其中,第一判斷模塊201,用于當接收到被引導的用戶訪問時,判斷所述用戶要訪問的源站的內容是動態(tài)內容還是靜態(tài)內容,如果是動態(tài)內容,獲取所述用戶要訪問的源站的內容,并判斷獲取的內容是否可以進行實時的優(yōu)化,如果可以進行實時的優(yōu)化,則將其優(yōu)化后提供給用戶,結束本次優(yōu)化,如果不能進行實時的優(yōu)化,則直接提供給用戶,結束本次優(yōu)化;如果是靜態(tài)內容,啟動第二判斷模塊202 ;其中,第一判斷模塊201進行的實時的優(yōu)化操作包括:對內容進行自適應壓縮;刪除內容中的無效文件;刪除內容中的代碼類文件中的無效部分;壓縮內容中的URL長度;根據(jù)用戶的需要,設置內容中的圖片文件的大??;根據(jù)用戶設備的類型,進行重新排版;壓縮內容中的圖片文件、視頻文件;合并內容中的元素以減少請求次數(shù);控制內容的并發(fā)量以達到合理的并發(fā)請求量;判斷用戶瀏覽器是否支持SPDY協(xié)議,如果支持,則開啟內容的SPDY傳輸,否則,不開啟內容的SPDY傳輸;對內容啟用keepalive,并根據(jù)所述源站的類型,設置相應的超時時間;對內容的url進行替換以使用戶能夠實時獲取更新內容;對內容中的元素的存儲 時間和加載順序進行優(yōu)化設置;根據(jù)內容中的css或html,設置內容中的圖片的尺寸;將文件格式和字符集的類型加入內容的http頭部;刪除內容中的空的src、空的href以及無效的HTTP響應頭部;
隔離針對內容中的靜態(tài)內容的用戶請求的cooki e ;增加內容中的必要的HTTP響應頭部??蛇x地,第一判斷模塊201可以通過獲取負載、cpu使用率數(shù)據(jù)并結合從源站獲取的內容的大小和類型來判斷該內容是否可以進行實時的優(yōu)化。第二判斷模塊202:用于判斷存儲模塊207是否存儲有所述用戶要訪問的源站的內容:如果沒有存儲用戶要訪問的源站的內容,獲取所述用戶要訪問的源站的內容,并發(fā)送給第三判斷模塊203 ;如果存儲有所述用戶要訪問的源站內容,判斷存儲的內容中是否有經(jīng)過優(yōu)化的內容:如果存儲的內容中有經(jīng)過優(yōu)化的內容,則將所述經(jīng)過優(yōu)化的內容作為待處理的內容,啟動第四判斷模塊204 ;如果存儲的內容中沒有經(jīng)過優(yōu)化的內容,則將未經(jīng)過優(yōu)化的內容作為待處理的內容,啟動第四判斷模塊204 ;第三判斷模塊203:用于接收第二判斷模塊202、第五判斷模塊205發(fā)送的內容,判斷接收的內容是否可以進行實時的優(yōu)化,如果可以,則將其優(yōu)化后提供給用戶并存儲于存儲模塊207,結束本次優(yōu)化;如果不可以進行實時的優(yōu)化,則將其提供給用戶并存儲于存儲模塊207,以及將其發(fā)送給優(yōu)化模塊206 ;可選地,第三判斷模塊203可以通過獲取負載、cpu使用率數(shù)據(jù)并結合第二判斷模塊202、第五判斷模塊205發(fā)送的內容的大小和類型來判斷該內容是否可以進行實時的優(yōu)化。其中,第三判斷模塊203進行的實時的優(yōu)化操作與第一判斷模塊201進行的實時的優(yōu)化操作相同。第四判斷模塊204:用于判斷存儲模塊207中的所述待處理的內容是否超過生存期,如果沒有超過生存期,則將其發(fā)送給用戶,并結束本次優(yōu)化;如果超過生存期,則啟動第五判斷模塊205 ;第五判斷模塊205:用于判斷源站的內容是否有更新,如果源站的內容沒有更新,則將存儲模塊207中存儲的所述待處理的內容發(fā)送給用戶并將其生存時間重置為0,結束本次優(yōu)化;如果源站的內容有更新,獲取源站的更新的內容,則刪除存儲模塊207中所述待處理的內容,然后將獲取的更新的內容發(fā)送給第三判斷模塊203 ;優(yōu)化模塊206:用于接收第三判斷模塊203發(fā)送的內容,并對其進行后臺的優(yōu)化,將經(jīng)過后臺的優(yōu)化的內容存儲于存儲模塊207,結束本次優(yōu)化。其中,優(yōu)化模塊206進行的實時的優(yōu)化操作與第一判斷模塊201進行的實時的優(yōu)化操作相同。其中,可選地,所述存儲模塊207可以是緩存。其中,優(yōu)化服務器20可以由單臺服務器構成,或可以由多臺服務器組成的服務器群構成。服務器群中的多臺服務器可以集中在一個物理地域,也可以分散在多個物理地域內。本實施例的優(yōu)化服務器20通過判斷是否存儲有用戶要訪問的源站的內容以及判斷源站的內容是否已經(jīng)更新以確定對用戶要訪問的內容是否進行優(yōu)化,從而能夠在不改變任何網(wǎng)站內容以及不降低網(wǎng)民的訪問感受的情況下,對網(wǎng)站內容進行優(yōu)化,此外,本發(fā)明通過合理增加用戶和服務器的連接、減小網(wǎng)站內容的大小、減少二次訪問用戶需要獲取的對象、改善加載順序等方法,大 幅度改善網(wǎng)民的訪問體驗。
所屬領域的技術人員可以清楚地了解到,為描述的方便和簡潔,上述描述的裝置和模塊的具體工作過程,可以參考前述方法實施例中的對應過程,在此不再贅述。在本發(fā)明所提供的幾個實施例中,應該理解到,所揭露的方法和裝置,可以通過其它的方式實現(xiàn)。例如,以上所描述的裝置實施例僅僅是示意性的,例如,所示模塊的劃分,僅僅為一種邏輯功能劃分,實際實現(xiàn)時,可以有另外的劃分方式,例如各功能模塊可以集成在一個處理模塊中,也可以是各個模塊單獨物理存在,也可以兩個或兩個以上模塊集成在一個模塊中。上述集成的模塊既可以采用硬件的形式實現(xiàn),也可以采用硬件加軟件功能模塊的形式實現(xiàn),或一些特征可以忽略,或不執(zhí)行。另外,本領域普通技術人員可以理解實現(xiàn)上述實施例方法中的全部或部分流程,是可以通過計算機程序來指令相關硬件完成的,所述的程序可以存儲于一計算機可讀存儲介質中,該程序在執(zhí)行時,可包括如上述各方法的實施例的流程。其中,所述的存儲介質可為磁盤、光盤、只讀存儲記憶體(Read-OnlyMemory ;簡稱:R0M)或隨機存儲記憶體(RandomAccess Memory ;簡稱:RAM)等。最后應說明的是:以上實施例僅用以說明本發(fā)明的技術方案,而非對其限制;盡管參照前述實施例對本發(fā)明進行了詳細的說明,本領域的普通技術人員應當理解:其依然可以對前述各實施例所記載的技術方案進行修改,或者對其中部分技術特征進行等同替換,而這些修改或者替換,并不使相應技術方案的本質脫離本發(fā)明各實施例技術方案的精神和 范圍。
權利要求
1.一種優(yōu)化方法,其特征在于,所述方法包括: 步驟一:當接收到被引導的用戶訪問時,判斷所述用戶要訪問的源站的內容是動態(tài)內容還是靜態(tài)內容,如果是動態(tài)內容,獲取所述用戶要訪問的源站的內容,并判斷獲取的內容是否可以進行實時的優(yōu)化,如果可以進行實時的優(yōu)化,則將其優(yōu)化后提供給用戶,結束本次優(yōu)化,如果不能進行實時的優(yōu)化,則直接提供給用戶,結束本次優(yōu)化;如果是靜態(tài)內容,則轉入步驟二 ; 步驟二:判斷是否存儲有所述用戶要訪問的源站的內容:如果沒有存儲用戶要訪問的源站的內容,獲取所述用戶要訪問的源站的內容,進入步驟三;如果存儲有所述用戶要訪問的源站內容,判斷存儲的內容中是否有經(jīng)過優(yōu)化的內容:如果存儲的內容中有經(jīng)過優(yōu)化的內容,則將所述經(jīng)過優(yōu)化的內容作為待處理的內容,轉入步驟四;如果存儲的內容中沒有經(jīng)過優(yōu)化的內容,則將未經(jīng)過優(yōu)化的 內容作為待處理的內容,轉入步驟四; 步驟三:判斷獲取的內容是否可以進行實時的優(yōu)化,如果可以進行實時的優(yōu)化,則將其優(yōu)化后提供給用戶并存儲,結束本次優(yōu)化;如果不可以進行實時的優(yōu)化,則將其提供給用戶并存儲,然后轉入步驟六; 步驟四:判斷所述待處理的內容是否超過生存期,如果沒有超過生存期,則將其發(fā)送給用戶,并結束本次優(yōu)化;如果超過生存期,則轉入步驟五; 步驟五:判斷源站的內容是否有更新,如果源站的內容沒有更新,則將所述待處理的內容提供給用戶并將其生存時間重置為O,結束本次優(yōu)化;如果源站的內容有更新,則刪除所述待處理的內容,獲取更新的內容,然后轉入步驟三; 步驟六:對不能進行實時的優(yōu)化的的內容進行后臺的優(yōu)化,并對經(jīng)過后臺的優(yōu)化的內容進行存儲,結束本次優(yōu)化。
2.根據(jù)權利要求1所述的優(yōu)化方法,其特征在于,所述優(yōu)化包括: 對內容進行自適應壓縮; 刪除內容中的無效文件; 刪除內容中的代碼類文件中的無效部分; 壓縮內容中的URL長度; 根據(jù)用戶的需要,設 置內容中的圖片文件的大??; 根據(jù)用戶設備的類型,進行重新排版; 壓縮內容中的圖片文件、視頻文件; 合并內容中的元素以減少請求次數(shù); 控制內容的并發(fā)量以達到合理的并發(fā)請求量; 判斷用戶瀏覽器是否支持SPDY協(xié)議,如果支持,則開啟內容的SPDY傳輸,否則,不開啟內容的SPDY傳輸; 對內容啟用keepalive,并根據(jù)所述源站的類型,設置相應的超時時間; 對內容的url進行替換以使用戶能夠實時獲取更新內容; 對內容中的元素的存儲時間和加載順序進行優(yōu)化設置; 根據(jù)內容中的css或html,設置內容中的圖片的尺寸; 將文件格式和字符集的類型加入內容的http頭部; 刪除內容中的空的src、空的href以及無效的HTTP響應頭部;隔離針對內容中的靜態(tài)內容的用戶請求的cookie ; 增加內容中的必要的HTTP響應頭部。
3.根據(jù)權利要求1-2之一所述的優(yōu)化方法,其特征在于:所述判斷獲取的內容是否可以進行實時的優(yōu)化是通過負載、CPU使用率數(shù)據(jù)并結合所述獲取的內容的大小和類型來判斷。
4.一種優(yōu)化服務器,其特征在于,所述優(yōu)化服務器包括第一判斷模塊、第二判斷模塊、第三判斷模塊、第四判斷模塊、第五判斷模塊、優(yōu)化模塊以及存儲模塊,其中, 第一判斷模塊,用于當接收到被引導的用戶訪問時,判斷所述用戶要訪問的源站的內容是動態(tài)內容還是靜態(tài)內容,如果是動態(tài)內容,獲取所述用戶要訪問的源站的內容,并判斷獲取的內容是否可以進行實時的優(yōu)化,如果可以進行實時的優(yōu)化,則將其優(yōu)化后提供給用戶,結束本次優(yōu)化,如果不能進行實時的優(yōu)化,則直接提供給用戶,結束本次優(yōu)化;如果是靜態(tài)內容,啟動第二判斷模塊; 第二判斷模塊,用于判斷存儲模塊是否存儲有所述用戶要訪問的源站的內容:如果沒有存儲用戶要訪問的源站的內容,獲取所述用戶要訪問的源站的內容,并發(fā)送給第三判斷模塊;如果存儲有所述用戶要訪問的源站內容,判斷存儲的內容中是否有經(jīng)過優(yōu)化的內容:如果存儲的內容中有經(jīng)過優(yōu)化的內容,則將所述經(jīng)過優(yōu)化的內容作為待處理的內容,啟動第四判斷模塊;如果存儲的內容中沒有經(jīng)過優(yōu)化的內容,則將未經(jīng)過優(yōu)化的內容作為待處理的內容,啟動第四判斷模塊; 第三判斷模塊:用于接收第二判斷模塊、第五判斷模塊發(fā)送的內容,判斷接收的內容是否可以進行實時的優(yōu)化,如果可以,則將其優(yōu)化后提供給用戶并存儲于存儲模塊,結束本次優(yōu)化;如果不可以進行實時的優(yōu)化,則將其提供給用戶并存儲于存儲模塊,以及將其發(fā)送給優(yōu)化模塊; 第四判斷模塊:用于判斷存儲模塊`中的所述待處理的內容是否超過生存期,如果沒有超過生存期,則將其發(fā)送給用戶,并結束本次優(yōu)化;如果超過生存期,則啟動第五判斷模塊; 第五判斷模塊:用于判斷源站的內容是否有更新,如果源站的內容沒有更新,則將存儲模塊中存儲的所述待處理的內容發(fā)送給用戶并將其生存時間重置為0,結束本次優(yōu)化;如果源站的內容有更新,獲取源站的更新的內容,則刪除存儲模塊中所述待處理的內容,然后將獲取的更新的內容發(fā)送給第三判斷模塊; 優(yōu)化模塊:用于接收第三判斷模塊發(fā)送的內容,并對其進行后臺的優(yōu)化,將經(jīng)過后臺的優(yōu)化的內容存儲于存儲模塊,結束本次優(yōu)化。
5.根據(jù)權利要求4所述的優(yōu)化服務器,其特征在于,所述第一判斷模塊、第三判斷模塊和優(yōu)化模塊進行的優(yōu)化,包括以下操作: 對內容進行自適應壓縮; 刪除內容中的無效文件; 刪除內容中的代碼類文件中的無效部分; 壓縮內容中的URL長度; 根據(jù)用戶的需要,設置內容中的圖片文件的大??; 根據(jù)用戶設備的類型,進行重新排版;壓縮內容中的圖片文件、視頻文件; 合并內容中的元素以減少請求次數(shù); 控制內容的并發(fā)量以達到合理的并發(fā)請求量; 判斷用戶瀏覽器是否支持SPDY協(xié)議,如果支持,則開啟內容的SPDY傳輸,否則,不開啟內容的SPDY傳輸; 對內容啟用keepalive,并根據(jù)所述源站的類型,設置相應的超時時間; 對內容的url進行替換以使用戶能夠實時獲取更新內容; 對內容中的元素的存儲時間和加載順序進行優(yōu)化設置; 根據(jù)內容中的css或html,設置內容中的圖片的尺寸; 將文件格式和字符集的類型加入內容的http頭部; 刪除內容中的空的src、空的href以及無效的HTTP響應頭部; 隔離針對內容中的靜態(tài)內容的用戶請求的cookie ; 增加內容中的必要的HTTP響應頭部。
6.根據(jù)權利要求4-5之一所述的優(yōu)化服務器,其特征在于,所述第一判斷模塊和第三判斷模塊是通過負載、CPU使用率數(shù)據(jù)并結合內容的大小和類型來判斷是否可以對內容進行實時的優(yōu)化。
7.根據(jù)權利要求6所述的優(yōu)化服務器,其特征在于,所述優(yōu)化服務器是由單臺服務器構成,或是由多臺服務器組成的服務器群構成。
全文摘要
本發(fā)明提供一種優(yōu)化方法和優(yōu)化服務器。本發(fā)明的方法通過判斷是否存儲有用戶要訪問的源站的內容以及判斷源站的內容是否已經(jīng)更新來確定是否需要對用戶訪問的內容進行優(yōu)化,從而能夠在不改變任何網(wǎng)站內容以及不降低網(wǎng)民的訪問感受的情況下,對網(wǎng)站內容進行優(yōu)化;此外,本發(fā)明通過合理增加用戶和服務器的連接、減小網(wǎng)站內容的大小、減少二次訪問用戶需要獲取的對象、改善加載順序等方法,大幅度改善網(wǎng)民的訪問體驗。
文檔編號H04L29/08GK103237013SQ201310106420
公開日2013年8月7日 申請日期2013年3月29日 優(yōu)先權日2013年3月29日
發(fā)明者王康 申請人:北京暢訊通網(wǎng)絡技術有限責任公司