內(nèi)容服務(wù)器時延確定的制作方法
【專利摘要】確定發(fā)布者服務(wù)器、第一內(nèi)容服務(wù)器和第二內(nèi)容服務(wù)器的性能。基于發(fā)布者服務(wù)器性能、第一內(nèi)容服務(wù)器性能和第二內(nèi)容服務(wù)器性能來確定時延時間信息,時延時間信息表示加載與發(fā)布者服務(wù)器、第一內(nèi)容服務(wù)器和第二內(nèi)容服務(wù)器中的每一個相關(guān)聯(lián)的內(nèi)容的時長。
【專利說明】內(nèi)容服務(wù)器時延確定
[0001]分案說明
[0002]本申請屬于申請日為2008年8月7日的中國專利申請200880108326.9的分案申請。
【技術(shù)領(lǐng)域】
[0003]本公開涉及信息檢索。
【背景技術(shù)】
[0004]響應(yīng)于由客戶端設(shè)備在網(wǎng)頁的呈現(xiàn)期間生成的內(nèi)容項請求,顯示在網(wǎng)頁上的內(nèi)容可以由一個或多個內(nèi)容項服務(wù)器生成。內(nèi)容項請求可以關(guān)于網(wǎng)頁的呈現(xiàn)同步生成。同樣,響應(yīng)于內(nèi)容項請求所接收的內(nèi)容項可以關(guān)于網(wǎng)頁的呈現(xiàn)同步處理。例如,在網(wǎng)頁被呈現(xiàn)時,JavaScript可以執(zhí)行并且從第一內(nèi)容服務(wù)器請求廣告。順次地,第一內(nèi)容服務(wù)器可以從第二內(nèi)容服務(wù)器請求廣告。如果廣告被同步檢索,則網(wǎng)頁的呈現(xiàn)被延遲至從內(nèi)容服務(wù)器接收到所請求的廣告。一旦廣告被接收并呈現(xiàn),例如被顯示在網(wǎng)頁上,則恢復(fù)網(wǎng)頁的剩余部分的呈現(xiàn)。
[0005]同步的內(nèi)容項檢索的缺點是:如果內(nèi)容項服務(wù)器慢,則網(wǎng)頁的剩余部分的呈現(xiàn)將被延遲。為了減輕同步的內(nèi)容項處理的潛在影響,網(wǎng)頁發(fā)布者試圖識別延遲源,即可能慢或暫時不可操作的內(nèi)容項服務(wù)器,并且試圖計算總時延(latency)時間。然而,為了計算與不同的服務(wù)器相關(guān)聯(lián)的時延時間,匯集(compile)來自網(wǎng)頁的呈現(xiàn)的多個HTTP請求和響應(yīng)通常是復(fù)雜的任務(wù)。例如,由于多個HTTP請求和響應(yīng)自身不會出現(xiàn)在網(wǎng)頁上而由第一內(nèi)容服務(wù)器返回,故其可能看起來陌生。此外,如果確定例如第二內(nèi)容服務(wù)器的特定服務(wù)器是延遲源,則向第二內(nèi)容服務(wù)器的操作者說明延遲是困難的。
【發(fā)明內(nèi)容】
[0006]根據(jù)一些實施方式,確定發(fā)布者服務(wù)器、第一內(nèi)容服務(wù)器和第二內(nèi)容服務(wù)器的性能?;诎l(fā)布者服務(wù)器性能、第一內(nèi)容服務(wù)器性能和第二內(nèi)容服務(wù)器性能來確定時延時間信息。時延時間信息可以表不加載與發(fā)布者服務(wù)器、第一內(nèi)容服務(wù)器和第二內(nèi)容服務(wù)器中的每一個相關(guān)聯(lián)的內(nèi)容的時長。
[0007]根據(jù)一些實施方式,包含對帶有第一行為的腳本的引用的文檔的統(tǒng)一資源定位符(URL)可被指定,其中第一參數(shù)(argument)被添加到URL。包含對帶有第二行為的腳本的引用的文檔的URL可被指定,其中第二參數(shù)被添加到URL。響應(yīng)于請求,接收包含腳本的文檔。帶有第一行為的腳本被執(zhí)行以確定發(fā)布者服務(wù)器時延時間,以及帶有第二行為的腳本被執(zhí)行以確定第一內(nèi)容服務(wù)器時延時間。第二內(nèi)容服務(wù)器時延時間基于發(fā)布者服務(wù)器時延時間和第一內(nèi)容服務(wù)器時延時間來確定。
[0008]根據(jù)一些實施方式,系統(tǒng)包括處理器,可被配置為確定與發(fā)布者服務(wù)器、第一內(nèi)容服務(wù)器和第二內(nèi)容服務(wù)器相關(guān)聯(lián)的性能。客戶端設(shè)備可被配置為基于發(fā)布者服務(wù)器性能、第一內(nèi)容服務(wù)器性能和第二內(nèi)容服務(wù)器性能來確定時延時間信息,所述時延時間信息表示加載與發(fā)布者服務(wù)器、第一內(nèi)容服務(wù)器和第二內(nèi)容服務(wù)器中的每一個相關(guān)聯(lián)的內(nèi)容的時長。根據(jù)一些實施方式,系統(tǒng)包括處理器,可被配置為從一個或多個遠(yuǎn)程位置請求內(nèi)容,其中內(nèi)容包括用于確定與請求相關(guān)聯(lián)的時延信息的計算機可執(zhí)行的指令??刹僮鞯伛罱拥教幚砥鞯慕缑婵杀慌渲脼轱@示時延信息,時延信息包括與和在界面中內(nèi)容的顯示相關(guān)聯(lián)的一個或多個遠(yuǎn)程位置相關(guān)聯(lián)的時延時間。
[0009]根據(jù)一些實施方式,請求內(nèi)容,其中請求是指向內(nèi)容的統(tǒng)一資源定位符(URL),并且URL包括添加的參數(shù)。所請求的內(nèi)容可以被加載入第一用戶界面中的內(nèi)容頁中。然后可以顯示第二用戶界面。根據(jù)添加到URL的參數(shù),與內(nèi)容頁相關(guān)聯(lián)的一個或多個內(nèi)容項然后可以在第二用戶界面中被顯示。另外,與一個或多個內(nèi)容項相關(guān)聯(lián)的一個或多個屬性可以在第二用戶界面中被顯示。
[0010]根據(jù)一些實施方式,內(nèi)容頁的第一部分可以在第一用戶界面中被加載,其中第一部分包括從發(fā)布者服務(wù)器接收的內(nèi)容。然后可以顯示第二用戶界面。內(nèi)容頁的第二部分可以在第二用戶界面中被加載,其中第二部分包括從一個或多個內(nèi)容服務(wù)器接收的一個或多個內(nèi)容項。另外,與一個或多個內(nèi)容項相關(guān)聯(lián)的一個或多個屬性可以在第二用戶界面中被顯不O
[0011]根據(jù)一些實施方式,系統(tǒng)包括發(fā)布者服務(wù)器,可被配置為將內(nèi)容頁的第一部分傳送至客戶端設(shè)備,其中第一部分包括發(fā)布者內(nèi)容。額外地,一個或多個內(nèi)容服務(wù)器可被配置為將內(nèi)容頁的第二部分傳送至客戶端設(shè)備,其中第二部分包括一個或多個內(nèi)容項。客戶端設(shè)備可被配置為在第一用戶界面中加載內(nèi)容頁的第一部分、在第二用戶界面中加載內(nèi)容頁的第二部分以及在第二用戶界面中顯示與一個或多個內(nèi)容項相關(guān)聯(lián)的一個或多個屬性。
[0012]根據(jù)一些實施方式,系統(tǒng)包括客戶端設(shè)備,被配置為保存從一個或多個內(nèi)容服務(wù)器接收的與內(nèi)容頁相關(guān)聯(lián)的一個或多個內(nèi)容項的副本。額外地,處理器可被配置為生成用戶界面;為一個或多個保存的內(nèi)容項生成組合的源代碼;以及將組合的源代碼插入用戶界面中。
[0013]根據(jù)一些實施方式,系統(tǒng)包括發(fā)布者服務(wù)器,可被配置為捕捉與一個或多個內(nèi)容項相關(guān)聯(lián)的一個或多個內(nèi)容項標(biāo)識。服務(wù)器處理器可被配置為生成用戶界面;向第一內(nèi)容服務(wù)器生成請求與一個或多個內(nèi)容項標(biāo)識相關(guān)聯(lián)的一個或多個內(nèi)容項的請求;以及將一個或多個內(nèi)容項呈現(xiàn)在用戶界面中。
【專利附圖】
【附圖說明】
[0014]圖1是用于從內(nèi)容服務(wù)器請求內(nèi)容的示例系統(tǒng)的框圖。
[0015]圖2是用于確定時延貢獻(xiàn)的示例過程。
[0016]圖3是用于確定時延貢獻(xiàn)的另一個示例過程。
[0017]圖4圖示了顯示NoFetch模式的輸出的示例界面。
[0018]圖5圖示了顯示NoRender模式的輸出的示例界面。
[0019]圖6是用于確定時延問題源的示例過程。
[0020]圖7是用于確定與一個或多個內(nèi)容服務(wù)器相關(guān)聯(lián)的時延時間的示例過程。
[0021]圖8是用于確定與一個或多個內(nèi)容服務(wù)器相關(guān)聯(lián)的時延時間的另一個示例過程。[0022]圖9是用于確定與一個或多個內(nèi)容服務(wù)器相關(guān)聯(lián)的時延時間的另一個示例過程。
[0023]圖10是示例用戶界面的圖示。
【具體實施方式】
[0024]圖1是用于從一個或多個內(nèi)容服務(wù)器請求內(nèi)容的示例系統(tǒng)10的框圖。在一個實施方式中,內(nèi)容可以包括廣告,以及內(nèi)容服務(wù)器可以是內(nèi)容服務(wù)器。也可以請求不同類型的內(nèi)容。
[0025]在一個實施方式中,客戶端系統(tǒng)100被配置為查看通過例如因特網(wǎng)的網(wǎng)絡(luò)可訪問的內(nèi)容(例如訪問網(wǎng)頁)??蛻舳讼到y(tǒng)100可以是例如web瀏覽器或者執(zhí)行網(wǎng)絡(luò)導(dǎo)航軟件的計算設(shè)備等。由客戶端系統(tǒng)100訪問的web地址(例如統(tǒng)一資源定位符(URL))可以被解析以識別托管對應(yīng)的網(wǎng)頁的發(fā)布者102,例如服務(wù)器。在這個示例中,客戶端系統(tǒng)100可以為網(wǎng)頁內(nèi)容106將網(wǎng)頁內(nèi)容請求104發(fā)送給發(fā)布者102。發(fā)布者102響應(yīng)于請求將網(wǎng)頁內(nèi)容106作為例如包含JavaScript的HTML文檔提供給客戶端系統(tǒng)100。網(wǎng)頁內(nèi)容106可以包括一個或多個內(nèi)容展示。在一個實施方式中,內(nèi)容展示可以包括用于待由內(nèi)容服務(wù)器派發(fā)的廣告的廣告槽段(slot)。其它的內(nèi)容展示也可以被使用。
[0026]由發(fā)布者102提供的網(wǎng)頁內(nèi)容106包括對一組指令108的引用。在一個實施方式中,指令108包括用于呈現(xiàn)并展示所請求的內(nèi)容例如廣告的存儲指令108a、定時指令108b和請求指令108c。在一個實施方式中,指令108由例如內(nèi)容服務(wù)器的第一內(nèi)容服務(wù)器134提供,并且被存儲在客戶端系統(tǒng)100處,諸如與web瀏覽器相關(guān)聯(lián)的緩存中。
[0027]網(wǎng)頁內(nèi)容106可以定義被配置為顯示來自一個或多個內(nèi)容服務(wù)器的內(nèi)容的內(nèi)容槽段112-120。在一個實施方式中,內(nèi)容槽段112-120是在HTML標(biāo)記內(nèi)定義的廣告槽段。指令108生成被發(fā)出來請求內(nèi)容以填充內(nèi)容槽段112至120的內(nèi)容請求122-130。在一個實施方式中,請求122至130被存儲在諸如緩沖區(qū)132的數(shù)據(jù)存儲132中,并且然后以一個或多個請求136發(fā)送給內(nèi)容服務(wù)器134。
[0028]在一個實施方式中,第一內(nèi)容服務(wù)器134處理所接收的單個或組合請求136并且將所識別的內(nèi)容138返回給客戶端系統(tǒng)100。在另一個實施方式中,第一內(nèi)容服務(wù)器134處理來自客戶端系統(tǒng)100的所接收的單個或組合請求136,并且將組合響應(yīng)137發(fā)送給客戶端系統(tǒng)100。例如,響應(yīng)可以以HTML或JavaScript形式。從第一內(nèi)容服務(wù)器134到客戶端系統(tǒng)100的組合響應(yīng)137可以指示客戶端系統(tǒng)100將請求內(nèi)容項的一個或多個請求140發(fā)送給第二內(nèi)容服務(wù)器142。第二內(nèi)容服務(wù)器142然后可以例如將所識別的內(nèi)容144返回給客戶端系統(tǒng)100。所識別的內(nèi)容138和/或144然后可以作為發(fā)布者的網(wǎng)頁的一部分被顯示在對應(yīng)的內(nèi)容槽段中,例如內(nèi)容槽段112、114和116。
[0029]第一內(nèi)容服務(wù)器134的示例可以包括Google?內(nèi)容服務(wù)器。可以向Google?內(nèi)容服務(wù)器發(fā)出請求以用廣告填充網(wǎng)頁上的內(nèi)容槽段。順次地,Google?內(nèi)容服務(wù)器可以識別并提供廣告,或者Google?內(nèi)容服務(wù)器可以從第二內(nèi)容服務(wù)器142即第三方內(nèi)容服務(wù)器請求廣告。雖然僅提及兩個內(nèi)容服務(wù)器134和142,但是多于兩個內(nèi)容服務(wù)器可以向單個網(wǎng)頁提供內(nèi)容。
[0030]在客戶端系統(tǒng)100從發(fā)布者102、第一內(nèi)容服務(wù)器134和/或第二內(nèi)容服務(wù)器142請求內(nèi)容時,可能發(fā)生時延延遲。例如,時延延遲可能與各種問題相關(guān),諸如慢的網(wǎng)絡(luò)速度、發(fā)布者服務(wù)器102慢、第一內(nèi)容服務(wù)器134慢、和/或第二內(nèi)容服務(wù)器142慢??蛻舳讼到y(tǒng)100的用戶可能只能看到網(wǎng)頁加載所花費的總時延時間。因此,確定歸因于發(fā)布者服務(wù)器102、第一內(nèi)容服務(wù)器134和第二內(nèi)容服務(wù)器142的時延延遲貢獻(xiàn)可能很難說明。
[0031]如上面的示例中所描述,顯示網(wǎng)頁的總時延時間(L)可能歸因于網(wǎng)絡(luò)的速度,即包括網(wǎng)絡(luò)時延時間的發(fā)布者服務(wù)器102速度(LI)、第一內(nèi)容服務(wù)器134速度(L2)和第二內(nèi)容服務(wù)器142速度(L3)。因此,作為示例,對于總時延時間的計算可以由L=L1+L2+L3確定。
[0032]參考圖2,根據(jù)一些實施方式,確定時延貢獻(xiàn)的示例過程200從確定發(fā)布者服務(wù)器的性能(步驟202)開始。為了確定發(fā)布者服務(wù)器102的性能,可以通過將參數(shù)(或其它指示符)與請求包括在一起從發(fā)布者服務(wù)器102發(fā)出對內(nèi)容的請求。例如,可以將參數(shù)“g00gle_nofetch”添加到網(wǎng)頁內(nèi)容位置的 URL 如下:http://www.webpage.com?google_nofetch,以實現(xiàn)NoFetch模式。
[0033]可以從內(nèi)容位置接收與所請求的URL相關(guān)聯(lián)的文檔。文檔可以包括網(wǎng)頁內(nèi)容、媒體、文本、可下載的文件等。與發(fā)布者服務(wù)器102相關(guān)聯(lián)的性能即時延時間可以被確定。在一些實施方式中,在網(wǎng)頁內(nèi)容106內(nèi)的內(nèi)容派發(fā)(即JavaScript)標(biāo)記實現(xiàn)診斷邏輯。例如,在網(wǎng)頁內(nèi)容106內(nèi)的腳本文件可以測試諸如與發(fā)布者服務(wù)器102相關(guān)聯(lián)的時延時間的各種情況,以及將信息寫入用戶界面。
[0034]在NoFetch模式中,在網(wǎng)頁內(nèi)容106內(nèi)的腳本文件可以防止從第一內(nèi)容服務(wù)器134檢索內(nèi)容項,即向第一內(nèi)容服務(wù)器134發(fā)出的對廣告的請求。例如,傳送到第一內(nèi)容服務(wù)器134的任何請求可以以NO-OP指令替代,使得其(除生成調(diào)試跟蹤外)什么也不做。因此,以NoFetch模式運行可以確立發(fā)布者服務(wù)器102對于網(wǎng)頁的基準(zhǔn)性能,即如果發(fā)布者未將任何廣告添加到網(wǎng)頁則用戶將體驗到的NoFetch時延時間(LI)。
[0035]接著,與第一內(nèi)容服 務(wù)器134相關(guān)聯(lián)的性能被確定(步驟204)。為了確定第一內(nèi)容服務(wù)器134的性能,可以將參數(shù)(或其它指示符)與網(wǎng)頁位置的URL包括在一起。例如,可以將參數(shù)“google_norender”添加到網(wǎng)頁內(nèi)容位置的URL如下:http://www.webpage.com?google_norender,以實現(xiàn) NoRender 模式。
[0036]在一些實施方式中,在網(wǎng)頁內(nèi)容106內(nèi)的內(nèi)容派發(fā)(例如JavaScript)標(biāo)記實現(xiàn)診斷邏輯。例如,在網(wǎng)頁內(nèi)容106內(nèi)的腳本文件可以測試諸如與第一內(nèi)容服務(wù)器134相關(guān)聯(lián)的性能即時延時間的各種情況,以及將信息寫入用戶界面。
[0037]在NoRender模式中,在網(wǎng)頁內(nèi)容106內(nèi)的腳本文件可以從第一內(nèi)容服務(wù)器134返回內(nèi)容項,即可以將請求發(fā)送至第一內(nèi)容服務(wù)器134以檢索廣告。然而,在第一內(nèi)容服務(wù)器134檢索廣告后,腳本文件可以防止廣告在網(wǎng)頁上呈現(xiàn)。例如,與內(nèi)容槽段112、114和116中的廣告相關(guān)聯(lián)的代碼被顯示,而不是在網(wǎng)頁上的內(nèi)容槽段112、114和116中呈現(xiàn)實際廣告。因此,運行NoRender模式可以確立用于第一內(nèi)容服務(wù)器134檢索廣告但并不呈現(xiàn)廣告的性能即時延時間。與第一內(nèi)容服務(wù)器134相關(guān)聯(lián)的時延時間可以通過從NoRender時延時間減去NoFetch時延時間來計算,即L2=NoRender時延時間-NoFetch時延時間(LI)。
[0038]在步驟206中,第二內(nèi)容服務(wù)器142的性能可以被確定。為了確定第二內(nèi)容服務(wù)器142的性能,可以通過在不帶參數(shù)的情況下請求網(wǎng)頁內(nèi)容位置的URL如下http://www.webpage, com,來發(fā)出對第一內(nèi)容服務(wù)器134的內(nèi)容的請求。與請求并呈現(xiàn)URL相關(guān)聯(lián)的總頁面加載時間等于總時延時間(L)。因此,與第二內(nèi)容服務(wù)器142相關(guān)聯(lián)的時延時間可以通過從總時延時間減去NoRender時延時間來計算,即,L3=總時延時間(L) -NoRender (L2)。
[0039]在發(fā)布者服務(wù)器、第一內(nèi)容服務(wù)器和第二內(nèi)容服務(wù)器的性能被確定后,時延時間信息的確定可以基于發(fā)布者服務(wù)器性能、第一內(nèi)容服務(wù)器性能和第二內(nèi)容服務(wù)器性能來確定(步驟208)。時延時間信息可以表示加載與發(fā)布者服務(wù)器、第一內(nèi)容服務(wù)器和第二內(nèi)容服務(wù)器中的每一個相關(guān)聯(lián)的內(nèi)容的時長。例如,可以產(chǎn)生用戶界面,以及與歸因于不同組件的時延時間有關(guān)的信息被寫入該用戶界面。在一些實施方式中,用戶界面由提供單獨瀏覽器窗口的JavaScript代碼創(chuàng)建。
[0040]圖3是用于確定時延貢獻(xiàn)的另一個示例過程300。用于確定時延貢獻(xiàn)的示例過程300從以下開始:提交統(tǒng)一資源定位符(URL)以請求包含對腳本的引用的文檔,該請求包括添加到該URL的第一參數(shù)(步驟302)。例如,可以將第一參數(shù)“google_nofetch”添加到網(wǎng)頁內(nèi)容位置的URL如下:http://www.webpage.com?google_nofetch,以實現(xiàn)NoFetch模式。
[0041]接著,過程300可以提交URL以請求包含對腳本的引用的文檔,該請求包括添加到該URL的第二參數(shù)(步驟304)。例如,可以將參數(shù)“google_norender”添加到網(wǎng)頁內(nèi)容位置的 URL 如下:http://www.webpage.com?google_norender,以實現(xiàn) NoRender 模式。
[0042]響應(yīng)于步驟302和304中的請求,可以接收包含腳本的文檔(步驟306)。在接收文檔后,可以根據(jù)第一參數(shù)和第二參數(shù)來執(zhí)行腳本以確定發(fā)布者服務(wù)器時延時間和第一內(nèi)容服務(wù)器時延時間(步驟308)。例如,腳本可以根據(jù)第一參數(shù)執(zhí)行NoFetch模式,以及腳本可以根據(jù)第二參數(shù)執(zhí)行NoRender模式。基于發(fā)布者服務(wù)器時延時間和第一內(nèi)容服務(wù)器時延時間,第二內(nèi)容服務(wù)器時延時間可以被確定(步驟310)。
[0043]圖4圖示了顯示帶有執(zhí)行NoFetch模式的第一行為的腳本的輸出的示例界面400。圖4的列402指示與所執(zhí)行的NoFetch模式的指令相關(guān)聯(lián)的時延時間。例如,時延時間被展示為隨著腳本執(zhí)行而增加的 運行時間。圖4的列404提供用于由執(zhí)行NoFetch模式的腳本正處理的指令的消息類型。圖4的列406提供指示由執(zhí)行NoFetch模式的腳本正處理的指令的摘要消息。在NoFetch模式中,執(zhí)行在網(wǎng)頁內(nèi)容106內(nèi)的腳本文件可以防止從一個或多個內(nèi)容服務(wù)器檢索廣告。如圖4的408處所指示,腳本制止了對廣告的獲?。灰虼?,可以將NoFetch模式中的時延時間信息與發(fā)布者服務(wù)器相關(guān)聯(lián)。
[0044]在執(zhí)行帶有第一行為的腳本后,可以執(zhí)行帶有第二行為的腳本以確定第一內(nèi)容服務(wù)器時延時間(步驟310)。帶有第二行為的腳本可以執(zhí)行NoRender模式。圖5圖示了顯示NoRender模式的輸出的示例界面500。圖5的列502指示與執(zhí)行NoRender模式的腳本相關(guān)聯(lián)的時延時間。例如,時延時間被展示為隨著腳本執(zhí)行而增加的運行時間。圖5的列504提供用于由執(zhí)行NoRender模式的腳本正處理的指令的消息類型。圖5的列506提供指示由執(zhí)行NoRender模式的腳本正處理的指令的摘要消息。運行NoRender模式可以確立用于第一內(nèi)容服務(wù)器134檢索廣告但并不呈現(xiàn)廣告的性能,如圖5的508處所顯示。與第一內(nèi)容服務(wù)器134相關(guān)聯(lián)的時延時間可以通過從NoRender時延時間減去NoFetch時延時間來計算,即L2=NoRender時延時間-NoFetch時延時間(LI)。
[0045]在以NoFetch和NoRender模式運行文檔后,可以基于發(fā)布者服務(wù)器時延時間和第一內(nèi)容服務(wù)器時延時間來確定第二內(nèi)容服務(wù)器時延時間。為了確定第二內(nèi)容服務(wù)器142的性能,可以通過在不帶參數(shù)的情況下將網(wǎng)頁內(nèi)容位置的URL提交至發(fā)布者服務(wù)器102如下http://www.webpage, com,來發(fā)出對第一內(nèi)容服務(wù)器134的內(nèi)容的請求。與請求并呈現(xiàn)URL相關(guān)聯(lián)的總頁面加載時間基本上等于總時延時間(L)。因此,與第二內(nèi)容服務(wù)器142相關(guān)聯(lián)的時延時間可以通過從總時延時間減去NoRender時延時間來計算,即,L3=總時延時間(L) -NoRender 時延時間(L2)。
[0046]圖6是用于確定時延影響源的示例過程600?;趯εc發(fā)布者服務(wù)器、第一內(nèi)容服務(wù)器和第二內(nèi)容服務(wù)器相關(guān)聯(lián)的時延時間的確定,與內(nèi)容頁相關(guān)聯(lián)的慢加載時間源可以被確定。如果在判定步驟602中確定LI慢,則時延源最可能歸因于發(fā)布者服務(wù)器102 (步驟604)。然而,如果在判定步驟602中確定LI快,則過程600前進(jìn)到判定步驟606。在判定步驟606中,如果確定L2慢,則時延源最可能歸因于第一內(nèi)容服務(wù)器134 (步驟608)。如果在判定步驟606中確定L2快,則過程600前進(jìn)到判定步驟610。在判定步驟610中,如果確定L3快,則對于內(nèi)容頁加載時間的時延可以被認(rèn)為很少(L1、L2和L3均被確定為快)(步驟612)。然而,如果在判定步驟610中確定L3慢,則時延源最可能歸因于第二內(nèi)容服務(wù)器142 (步驟 614)。
[0047]基于在上面描述的示例過程,可以確定的是時延源最可能歸因于第二內(nèi)容服務(wù)器142?;谠摯_定,在圖7中圖示了用于確定與諸如第二內(nèi)容服務(wù)器142的一個或多個內(nèi)容服務(wù)器相關(guān)聯(lián)的時延時間的示例過程700。首先,可以請求內(nèi)容,其中請求是指向內(nèi)容的統(tǒng)一資源定位符(URL),URL包括添加的參數(shù)(步驟702)。響應(yīng)于請求所接收的內(nèi)容可以被加載入第一用戶界面中的內(nèi)容頁中(步驟704 )。在一個實施方式中,被加載入內(nèi)容頁的內(nèi)容可以包括內(nèi)容的第一部分,其中內(nèi)容的第一部分僅包括來自發(fā)布者服務(wù)器102的內(nèi)容。
[0048]接著,第二用戶界面可以被顯示(步驟706)。為了顯示第二用戶界面,可以請求包含腳本的文檔,其中請求包括指示符。例如,請求可以是指向接收文檔的統(tǒng)一資源定位符(URL)以及指示符是被添加到URL的參數(shù)。然后例如響應(yīng)于請求,文檔可以被接收。然后響應(yīng)于指示符的接收,腳本可以被執(zhí)行來顯示第二用戶界面。例如,第二用戶界面可以是與顯示內(nèi)容頁的瀏覽器窗口分立的瀏覽器窗口。
[0049]在另一個實施方式中,第一和第二用戶界面可以在同一界面中顯示。第一和第二用戶界面可以由常見客戶端設(shè)備上的常見瀏覽器呈現(xiàn)。例如,第一和第二用戶界面可以在客戶端設(shè)備上執(zhí)行的單個用戶界面中呈現(xiàn),諸如瀏覽器窗口。
[0050]隨后,根據(jù)添加到URL的參數(shù)可以在第二用戶界面中顯示與內(nèi)容頁相關(guān)聯(lián)的例如廣告的一個或多個內(nèi)容項(步驟708)。另外,可以顯示第二用戶界面中的每一個內(nèi)容項的一個或多個屬性(步驟710)。例如,被顯示的屬性可以包括與每一個內(nèi)容項相關(guān)聯(lián)的加載時間和總加載時間。
[0051]在一個實施方式中,顯示一個或多個內(nèi)容項可以通過利用客戶端側(cè)實施方式來完成。例如,待被插入內(nèi)容項槽段中的一個或多個內(nèi)容項的副本可以從一個或多個內(nèi)容服務(wù)器被接收并保存。然后可以向內(nèi)容頁注冊上載回調(diào)。在上載回調(diào)期間,顯示第二用戶界面,以及在內(nèi)容項槽段中進(jìn)行掃描。在內(nèi)容項槽段中進(jìn)行掃描后,與內(nèi)容項相關(guān)聯(lián)的例如HTML代碼的所有代碼可以被組合。組合的HTML代碼然后可以被插入第二用戶界面中,并且所有的內(nèi)容項可以被生成。
[0052]在另一個實施方式中,在第二用戶界面中顯示一個或多個內(nèi)容項可以通過利用服務(wù)器側(cè)實施方式來完成。例如,可以利用JavaScript捕捉與一個或多個內(nèi)容項相關(guān)聯(lián)的一個或多個內(nèi)容項標(biāo)識。然后可以打開第二用戶界面,以及通過利用一個或多個廣告標(biāo)識向一個或多個內(nèi)容服務(wù)器發(fā)出對一個或多個內(nèi)容項的請求。從一個或多個內(nèi)容服務(wù)器接收的一個或多個內(nèi)容項然后可以例如在第二用戶界面中被呈現(xiàn)。在一個實施方式中,與每一個內(nèi)容項相關(guān)聯(lián)的加載時間可以在第二用戶界面中被顯示。在一個實施方式中,總加載時間可以在第二用戶界面中被顯示。
[0053]在一些實施方式中,與第二用戶界面相關(guān)聯(lián)的源代碼可以被保存。例如,用戶可以查看并保存第二用戶界面中的頁面的源代碼。保存源代碼在向為時延負(fù)責(zé)的內(nèi)容服務(wù)器的操作者說明一個或多個內(nèi)容項的時延時是有用的。具體地,源代碼可以被用來準(zhǔn)確找出哪些內(nèi)容項即廣告在加載時間中產(chǎn)生最大延遲。源代碼可以例如被直接以電子郵件形式發(fā)送給內(nèi)容服務(wù)器的操作者。源代碼然后可以例如在諸如瀏覽器的用戶界面中被加載以說明關(guān)于特定內(nèi)容項的時延。
[0054]在圖8中圖示了用于確定與諸如第二內(nèi)容服務(wù)器142的一個或多個內(nèi)容服務(wù)器相關(guān)聯(lián)的時延時間的另一個示例過程800。在確定與內(nèi)容頁相關(guān)聯(lián)的時延源后,內(nèi)容頁的第一部分可以在第一用戶界面中被加載,其中第一部分包括從發(fā)布者服務(wù)器接收的內(nèi)容(步驟802)。例如,內(nèi)容的第一部分可以不包括來自一個或多個內(nèi)容服務(wù)器的一個或多個內(nèi)容項。
[0055]接著,第二用戶界面可以被顯示(步驟804)。隨后,與內(nèi)容頁的第二部分相關(guān)聯(lián)的源代碼即HTML代碼可以在第二用戶界面中被顯示,其中第二部分包括從一個或多個內(nèi)容服務(wù)器接收的一個或多個內(nèi)容項(步驟806)。為了在第二用戶界面中顯示與一個或多個內(nèi)容項相關(guān)聯(lián)的例如HTML代碼的源代碼,可以請求包含腳本的文檔,其中請求包括指示符。例如,請求可以是指向接收文檔的統(tǒng)一資源定位符(URL),以及指示符是被添加到URL的參數(shù)。然后例如響應(yīng)于請求 ,文檔可以被接收。然后響應(yīng)于指示符的接收,腳本可以被執(zhí)行來顯示包括與一個或多個內(nèi)容項相關(guān)聯(lián)的源代碼的第二用戶界面。
[0056]例如,參數(shù)“google_capture_norender”可以被添加到網(wǎng)頁內(nèi)容位置的URL如下http://www.webpage.com?google_capture_norender。作為響應(yīng),包含與一個或多個內(nèi)容項相關(guān)聯(lián)的源代碼的第二用戶界面可以被顯示。源代碼然后可以例如被復(fù)制(步驟808),被粘貼入編輯器中(步驟810),以及然后被保存至文件(步驟812),諸如本地HTML文件。此后諸如瀏覽器或其它用戶界面的用戶界面可以被利用來打開例如本地HTML文件的文件,其包含與一個或多個內(nèi)容項相關(guān)聯(lián)的源代碼(步驟814)。當(dāng)文件被打開時,文件可以在用戶界面中呈現(xiàn)與內(nèi)容頁相關(guān)聯(lián)的一個或多個內(nèi)容項(步驟816)。另外,與一個或多個內(nèi)容項相關(guān)聯(lián)的一個或多個屬性可以在用戶界面中被顯示(步驟818)。例如,屬性可以包括與每一個內(nèi)容項相關(guān)聯(lián)的加載時間和與一個或多個內(nèi)容項相關(guān)聯(lián)的總加載時間。圖9是用于確定與諸如第二內(nèi)容服務(wù)器142的一個或多個內(nèi)容服務(wù)器相關(guān)聯(lián)的時延時間的另一示例過程900。過程900從以下開始:在第一用戶界面中加載內(nèi)容頁的第一部分,其中第一部分包括從發(fā)布者服務(wù)器接收的內(nèi)容(步驟902)。例如,被加載入第一用戶界面中的內(nèi)容頁的部分可以不包括來自一個或多個內(nèi)容服務(wù)器的內(nèi)容。接著,第二用戶界面被顯示(步驟904)。例如,第二用戶界面可以是除第一用戶界面外的被顯示的窗口,諸如彈出窗口。
[0057]內(nèi)容頁的第二部分然后可以例如在第二用戶界面中被顯示,其中第二部分包括從一個或多個內(nèi)容服務(wù)器接收的一個或多個內(nèi)容項(步驟906)。另外,與一個或多個內(nèi)容項相關(guān)聯(lián)的一個或多個屬性可以在第二用戶界面中被顯示(步驟908)。例如,屬性可以包括與每一個內(nèi)容項相關(guān)聯(lián)的加載時間和與一個或多個內(nèi)容項相關(guān)聯(lián)的總加載時間。[0058]圖10是如在上面的過程中所描述的示例第二用戶界面1000的圖示。如所述,與一個或多個內(nèi)容項相關(guān)聯(lián)的一個或多個屬性可以在第二用戶界面1000中被顯示。在一個實施方式中,與每一個內(nèi)容項相關(guān)聯(lián)的位置和尺寸信息1002可以在第二用戶界面1000中被顯示。在另一個實施方式中,內(nèi)容項1004可以在第二用戶界面1000中被顯示。在另一個實施方式中,與每一個廣告相關(guān)聯(lián)的加載時間1006可以在第二用戶界面1000中被顯不。例如,可以將單個加載時間1006與和位置和尺寸信息1002 —起顯示的廣告1004相關(guān)聯(lián)。在另一個實施方式中,總加載時間1006可以在第二用戶界面1000中被顯示。
[0059]在本專利文檔中描述的裝置、方法、流程圖和結(jié)構(gòu)化框圖可以在包括程序代碼的計算機處理系統(tǒng)中實現(xiàn),該程序代碼包括由計算機處理系統(tǒng)可執(zhí)行的程序指令。還可以使用其它實施方式。另外,還可以利用在本專利文檔中描述的流程圖和結(jié)構(gòu)化框圖來實現(xiàn)對應(yīng)的軟件結(jié)構(gòu)和算法以及其等價物,所述流程圖和結(jié)構(gòu)化框圖描述了特定方法和/或支持步驟的對應(yīng)動作和支持公開的結(jié)構(gòu)化裝置的對應(yīng)功能。
[0060]所寫的描述闡明了本發(fā)明的最佳模式并且提供了描述本發(fā)明的示例使得本領(lǐng)域的普通技術(shù)人員能夠制造和使用本發(fā)明。所寫的描述并非將本發(fā)明限制在所闡明的精確的術(shù)語。因此,盡管已經(jīng)參考上面闡明的示例詳細(xì)描述了本發(fā)明,但是本領(lǐng)域的普通技術(shù)人員可以在不背離本發(fā)明的范圍的情況下,對示例進(jìn)行變更、修改和變化。
【權(quán)利要求】
1.一種用于確定內(nèi)容服務(wù)器時延的方法,包括: 從客戶端接收對用于第一網(wǎng)頁的多個相應(yīng)廣告槽段的廣告的請求; 獲取用于被識別為響應(yīng)于所述請求的多個廣告中的每一個的相應(yīng)指令,其中所獲取的相應(yīng)指令在被所述客戶端執(zhí)行時使得所述客戶端呈現(xiàn)所述廣告中的一個; 生成第一指令,所述第一指令在被所述客戶端執(zhí)行時使得所述客戶端在所述第一網(wǎng)頁中呈現(xiàn)所獲取的相應(yīng)指令,而不執(zhí)行所獲取的相應(yīng)指令; 生成第二指令,所述第二指令在被所述客戶端執(zhí)行時使得所述客戶端執(zhí)行所獲取的相應(yīng)指令,以在第二網(wǎng)頁中與相應(yīng)加載時間一起呈現(xiàn)所述廣告中的每一個廣告,其中所述相應(yīng)加載時間是可歸因于從其請求了該廣告的內(nèi)容服務(wù)器的時延;以及 響應(yīng)于接收到所述請求,向所述客戶端發(fā)送所述第一和第二指令,其中所述第一指令在被所述客戶端執(zhí)行時使得所述客戶端在所述第一網(wǎng)頁中呈現(xiàn)所獲取的相應(yīng)指令,從而所述客戶端的用戶能夠?qū)⑺@取的相應(yīng)指令的至少一部分的副本電子地提供給第三方以供對相應(yīng)加載時間進(jìn)行審核。
2.根據(jù)權(quán)利要求1所述的方法,其中所述第二指令進(jìn)一步使得所述客戶端在所述第二網(wǎng)頁中呈現(xiàn)加載時間,其中所述總加載時間是對于所有所述廣告的加載時間。
3.根據(jù)權(quán)利要求1所述的方法,進(jìn)一步包括接收請求,所述請求包括指示所述第一指令將被呈現(xiàn)在所述第一網(wǎng)頁中的參數(shù)。
4.根據(jù)權(quán)利要求1所述的方法,其中所接收的廣告中的一個廣告被內(nèi)容服務(wù)器所識別。
5.根據(jù)權(quán)利要求1所述的方法,其中所述第一指令包括為所述第一網(wǎng)頁注冊上載回調(diào)的指令。
6.一種用于確定內(nèi)容服務(wù)器時延的系統(tǒng),包括: 用于從客戶端接收對用于第一網(wǎng)頁的多個相應(yīng)廣告槽段的廣告的請求的裝置; 用于獲取用于被識別為響應(yīng)于所述請求的多個廣告中的每一個的相應(yīng)指令的裝置,其中所獲取的相應(yīng)指令在被所述客戶端執(zhí)行時使得所述客戶端呈現(xiàn)所述廣告中的一個; 用于生成第一指令的裝置,所述第一指令在被所述客戶端執(zhí)行時使得所述客戶端在所述第一網(wǎng)頁中呈現(xiàn)所獲取的相應(yīng)指令,而不執(zhí)行所獲取的相應(yīng)指令; 用于生成第二指令的裝置,所述第二指令在被所述客戶端執(zhí)行時使得所述客戶端執(zhí)行所獲取的相應(yīng)指令,以在第二網(wǎng)頁中與相應(yīng)加載時間一起呈現(xiàn)所述廣告中的每一個廣告,其中所述相應(yīng)加載時間是可歸因于從其請求了該廣告的內(nèi)容服務(wù)器的時延;以及 用于響應(yīng)于接收到所述請求,向所述客戶端發(fā)送所述第一和第二指令的裝置,其中所述第一指令在被所述客戶端執(zhí)行時使得所述客戶端在所述第一網(wǎng)頁中呈現(xiàn)所獲取的相應(yīng)指令,從而所述客戶端的用戶能夠?qū)⑺@取的相應(yīng)指令的至少一部分的副本電子地提供給第三方以供對相應(yīng)加載時間進(jìn)行審核。
7.根據(jù)權(quán)利要求6所述的系統(tǒng),其中所述第二指令進(jìn)一步使得所述客戶端在所述第二網(wǎng)頁中呈現(xiàn)加載時間,其中所述總加載時間是對于所有所述廣告的加載時間。
8.根據(jù)權(quán)利要求6所述的系統(tǒng),進(jìn)一步包括用于接收請求的裝置,所述請求包括指示所述第一指令將被呈現(xiàn)在所述第一網(wǎng)頁中的參數(shù)。
9.根據(jù)權(quán)利要求6所述的系統(tǒng),其中所接收的廣告中的一個廣告被內(nèi)容服務(wù)器所識別。
10.根據(jù)權(quán)利要求6所述的系統(tǒng),其中所述第一指令包括為所述第一網(wǎng)頁注冊上載回調(diào)的指令。
11.一種用于表明一個或多個服務(wù)器的時延的方法,所述方法由計算設(shè)備實現(xiàn),所述計算設(shè)備與發(fā)布者服務(wù)器以及所述一個或多個服務(wù)器通信地耦接,所述方法包括: 通過所述計算設(shè)備從所述發(fā)布者服務(wù)器接收發(fā)布者內(nèi)容; 在由所述計算設(shè)備所顯示的第一用戶界面中顯示內(nèi)容頁面的第一部分,所述第一部分包括從所述發(fā)布者服務(wù)器接收的所述發(fā)布者內(nèi)容; 由所述計算設(shè)備從所述一個或多個內(nèi)容服務(wù)器接收一個或多個內(nèi)容項目; 在由所述計算設(shè)備所顯示的第二用戶界面中顯示所述內(nèi)容頁面的第二部分,所述第二部分包括從所述一個或多個內(nèi)容服務(wù)器接收的所述一個或多個內(nèi)容項目;以及 由所述計算設(shè)備顯示與從所述一個或多個內(nèi)容服務(wù)器接收的所述一個或多個內(nèi)容項目相關(guān)聯(lián)的一個或多個屬性。
12.根據(jù)權(quán)利要求11所述的方法,其中顯示一個或多個屬性進(jìn)一步包括由所述計算設(shè)備顯示所述一個或多個內(nèi)容項目中的每一個的加載時間。
13.根據(jù)權(quán)利要求11所述的方法,其中顯示一個或多個屬性進(jìn)一步包括由所述計算設(shè)備顯示所述一個或多個內(nèi)容項目的總加載時間。
14.根據(jù)權(quán)利要求11所述的方法,其中顯示一個或多個屬性進(jìn)一步包括由所述計算設(shè)備顯示所述一個或多個內(nèi)容項目中的每一個在所述一個或多個內(nèi)容服務(wù)器上的位置。
15.根據(jù)權(quán)利要求11所述的方法,其中顯示一個或多個屬性進(jìn)一步包括由所述計算設(shè)備顯示所述一個或多個內(nèi)容項目中的每一個的尺寸。
16.根據(jù)權(quán)利要求11所述的方法,其中顯示內(nèi)容頁面的第一部分進(jìn)一步包括由所述計算設(shè)備將來自所述一個或多個內(nèi)容服務(wù)器的所述一個或多個內(nèi)容項目從所述第一用戶界面排除。
17.根據(jù)權(quán)利要求11所述的方法,其中顯示第二用戶界面進(jìn)一步包括由所述計算設(shè)備顯示彈窗。
18.—種通信地耦接到發(fā)布者服務(wù)器和一個或多個內(nèi)容服務(wù)器的計算設(shè)備,所述計算設(shè)備包括處理器和顯示設(shè)備,所述計算設(shè)備被配置為: 從所述發(fā)布者服務(wù)器接收發(fā)布者內(nèi)容; 在顯示在所述顯示設(shè)備上的第一用戶界面中顯示內(nèi)容頁面的第一部分,所述第一部分包括從所述發(fā)布者服務(wù)器接收的所述發(fā)布者內(nèi)容; 從所述一個或多個內(nèi)容服務(wù)器接收一個或多個內(nèi)容項目; 在顯示在所述顯示設(shè)備上的第二用戶界面中顯示所述內(nèi)容頁面的第二部分,所述第二部分包括從所述一個或多個內(nèi)容服務(wù)器接收的所述一個或多個內(nèi)容項目;以及 顯示與從所述一個或多個內(nèi)容服務(wù)器接收的所述一個或多個內(nèi)容項目相關(guān)聯(lián)的一個或多個屬性。
19.根據(jù)權(quán)利要求18所述的計算設(shè)備,其中所述計算設(shè)備進(jìn)一步被配置為使得所述一個或多個屬性包括所述一個或多個內(nèi)容項目中的每一個的加載時間。
20.根據(jù)權(quán)利要求18所述的計算設(shè)備,其中所述計算設(shè)備進(jìn)一步被配置為使得所述一個或多個屬性包括所述一個或多個內(nèi)容項目的總加載時間。
21.根據(jù)權(quán)利要求18所述的計算設(shè)備,其中所述計算設(shè)備進(jìn)一步被配置為使得所述一個或多個屬性包括所述一個或多個內(nèi)容項目中的每一個在所述一個或多個內(nèi)容服務(wù)器上的位置。
22.根據(jù)權(quán)利要求18所述的計算設(shè)備,其中所述計算設(shè)備進(jìn)一步被配置為使得所述一個或多個屬性包括所述一個或多個內(nèi)容項目中的每一個的尺寸。
23.根據(jù)權(quán)利要求18所述的計算設(shè)備,其中所述計算設(shè)備進(jìn)一步被配置為將來自所述一個或多個內(nèi)容服務(wù)器的所述一個或多個內(nèi)容項目從所述第一用戶界面排除。
24.根據(jù)權(quán)利要求18所述的計算設(shè)備,其中所述計算設(shè)備進(jìn)一步被配置為使得所述第二用戶界面是彈窗。
25.—種系統(tǒng),包括: 發(fā)布者服務(wù)器; 一個或多個內(nèi)容服務(wù)器;以及 客戶端計算設(shè)備,所述客戶端計算設(shè)備包括處理器和顯示設(shè)備; 其中所述發(fā)布者服務(wù)器被配置為將內(nèi)容頁面的第一部分發(fā)送到所述客戶端計算設(shè)備,其中所述第一部分包括發(fā)布者內(nèi)容, 其中所述一個或多個內(nèi)容服務(wù)器被配置為將所述內(nèi)容頁面的第二部分發(fā)送到所述客戶端計算設(shè)備,其中所述第二部分包括一個或多個內(nèi)容項目,以及其中所述客戶端計算設(shè)備被配置為: 從所述發(fā)布者服務(wù)器接收所述發(fā)布者內(nèi)容; 在顯示在所述顯示設(shè)備上的第一用戶界面中顯示所述內(nèi)容頁面的所述第一部分; 從所述一個或多個內(nèi)容服務(wù)器接收所述一個或多個內(nèi)容項目; 在顯示在所述顯示設(shè)備上的第二用戶界面中顯示所述內(nèi)容頁面的所述第二部分;以及顯示與從所述一個或多個內(nèi)容服務(wù)器接收的所述一個或多個內(nèi)容項目相關(guān)聯(lián)的一個或多個屬性。
26.根據(jù)權(quán)利要求25所述的系統(tǒng),其中所述計算設(shè)備進(jìn)一步被配置為使得所述一個或多個屬性包括所述一個或多個內(nèi)容項目中的每一個的加載時間。
27.根據(jù)權(quán)利要求25所述的系統(tǒng),其中所述計算設(shè)備進(jìn)一步被配置為使得所述一個或多個屬性包括所述一個或多個內(nèi)容項目的總加載時間。
28.根據(jù)權(quán)利要求25所述的系統(tǒng),其中所述計算設(shè)備進(jìn)一步被配置為使得所述一個或多個屬性包括所述一個或多個內(nèi)容項目中的每一個在所述一個或多個內(nèi)容服務(wù)器上的位置。
29.根據(jù)權(quán)利要求25所述的系統(tǒng),其中所述計算設(shè)備進(jìn)一步被配置為使得所述一個或多個屬性包括所述一個或多個內(nèi)容項目中的每一個的尺寸。
30.根據(jù)權(quán)利要求25所述的系統(tǒng),其中所述計算設(shè)備進(jìn)一步被配置為將來自所述一個或多個內(nèi)容服務(wù)器的所述一個或多個內(nèi)容項目從所述第一用戶界面排除。
【文檔編號】G06F17/30GK103544215SQ201310435865
【公開日】2014年1月29日 申請日期:2008年8月7日 優(yōu)先權(quán)日:2007年8月8日
【發(fā)明者】史蒂芬·楚恩 申請人:谷歌公司