TWI475407B - 藉由預期之預處理減少伺服之應用程式之潛時 - Google Patents
藉由預期之預處理減少伺服之應用程式之潛時 Download PDFInfo
- Publication number
- TWI475407B TWI475407B TW101114010A TW101114010A TWI475407B TW I475407 B TWI475407 B TW I475407B TW 101114010 A TW101114010 A TW 101114010A TW 101114010 A TW101114010 A TW 101114010A TW I475407 B TWI475407 B TW I475407B
- Authority
- TW
- Taiwan
- Prior art keywords
- client
- response
- responses
- server
- user
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/221—Parsing markup language streams
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
- Telephonic Communication Services (AREA)
Description
本揭示內容大體上係關於伺服之應用程式,且更具體言之關於預期使用者輸入而預處理伺服之應用程式之應用程式狀態以減少提供對應於一使用者之輸入之一應用程式狀態中之潛時。
本揭示內容揭示藉由預期之預處理減少伺服之應用程式之潛時之系統及方法。一或多個伺服器可主控一或多個應用程式。作為主控應用程式之部分,伺服器可將該應用程式之一或多個第一狀態傳輸至一或多個用戶端,判定期望對該第一狀態之一或多個用戶端回應,及判定該用戶端回應將係有限數目個可能的回應之一或多者。該伺服器可接著利用來自該有限組之可能的回應之至少一可能的回應產生一或多個額外狀態且可將該額外狀態提供給該用戶端。
在一些實施方案中,當實際上自用戶端接收特定可能的回應時,伺服器可提供額外狀態。然而,在其他實施方案中,當產生額外狀態時伺服器可將該額外狀態提供給用戶端,且當接收等於特定可能的回應之使用者輸入時用戶端可呈現該接收之額外狀態。
此外,在各種實施方案中,伺服器可產生可能的回應之各者之一額外狀態。然而,在各種其他實施方案中,伺服器可產生選擇數目個可能的回應之額外狀態。在此等其他實施方案中,伺服器可利用種類繁多的不同技術之一或多
者以選擇哪些可能的回應而針對其產生額外狀態,諸如藉由產生定義為潛在的潛時起因之可能的回應之額外狀態;產生比其他可能的回應更可能實際上被接收之數個可能的回應之額外狀態;產生基於伺服器負載所選擇的數個可能的回應之額外狀態等等。
應瞭解先前一般描述及下文詳細描述兩者係用於實例及說明目的且並不一定限制本揭示內容。併入本說明書中且構成本說明書之一部分之隨附圖式圖解說明本揭示內容之標的。描述及圖式一起用來說明本揭示內容之原理。
下文之描述包含具體實施本揭示內容之各種元件之樣本系統、方法及電腦程式產品。然而,應瞭解所述的揭示內容可按除本文所述的形式外的種類繁多的形式實踐。
軟體應用程式(諸如視訊遊戲、網頁瀏覽器、電子郵件用戶端、文字處理器、分錄彙總分析表等等)實行使用者之幾乎不受限的種類繁多的操作,諸如網際網路存取、文字處理、分錄彙總分析表功能、電子郵件、娛樂等等。可由一或多個伺服器(諸如前端伺服器、後端伺服器等等)主控此等軟體應用程式。伺服器可基於經由一或多個用戶端自一或多個使用者所接收的輸入而實行軟體應用程式之各種處理操作。此一用戶端可將使用者輸入傳輸至此一伺服器,該伺服器處理該接收之輸入以產生軟體應用程式之一更新之狀態。該伺服器可將該更新之狀態提供給該用戶端,該用戶端可接著對一或多個使用者呈現該提供之更新
之狀態。
然而,此一用戶端伺服器軟體應用程式組態可引起延遲。例如,在該伺服器能夠將軟體應用程式之一更新之狀態提供給用戶端前,該伺服器可需要時間以處理自該用戶端所接收的使用者輸入。當該伺服器自該用戶端接收使用者輸入時與當該伺服器能夠將該更新之狀態提供給該用戶端時之間的時間可引起一使用者利用該用戶端之延遲。取決於各種因素(諸如伺服器工作負載、在該伺服器與該用戶端之間之通信所需要的時間等等),由伺服器處理所致使的延遲可能對使用者而言係不可接受的。由於此等延遲,故使用者可能不滿意此等軟體應用程式之效能並且甚至可能中斷使用此等軟體應用程式。
本揭示內容揭示藉由預期之預處理減少伺服之應用程式之潛時之系統及方法。一或多個伺服器可主控一或多個應用程式。作為主控應用程式之部分,伺服器可將該應用程式之一或多個第一狀態傳輸至一或多個用戶端。該用戶端可對一或多個使用者呈現該第一狀態並且可接收使用者輸入以回應,該用戶端可接著將該使用者輸入傳輸至該伺服器。當該伺服器傳輸該第一狀態時,該伺服器可判定期望對該第一狀態之一或多個用戶端回應且該用戶端回應將係有限數目個可能的回應之一或多者。該伺服器可接著利用來自有限組之可能的回應之至少一可能的回應產生一或多個額外狀態且可將該額外狀態提供給該用戶端。在一些實施方案中,當該伺服器接收該用戶端回應且該用戶端回應
等於利用以產生該額外狀態之可能的回應時,該伺服器可將該額外狀態提供給該用戶端。在其他實施方案中,當產生該額外狀態時該伺服器可將該額外狀態傳輸給該用戶端,且當該用戶端判定該用戶端回應等於利用以產生該接收之額外狀態之可能的回應時該用戶端可利用該接收之額外狀態。由於在接受該用戶端回應前產生該額外狀態,故可避免當該伺服器接收該用戶端回應時與當該伺服器提供該更新之狀態時之時間之間的延遲。
圖1係圖解說明藉由預期之預處理減少伺服之應用程式之潛時之一系統100之一方塊圖。系統100包含一或多個伺服器101,該一或多個伺服器101係經由一或多個網路103而通信地耦合至一或多個用戶端102。伺服器及用戶端可係任何種類的計算裝置,諸如一伺服器電腦、一個人電腦、一桌上型電腦、一膝上型電腦、一行動計算裝置、一平板型計算裝置、一蜂巢式電話、一智慧型電話及/或其他此類計算裝置。網路可係任何種類的通信網路,諸如一區域網路、一廣域網路、網際網路、一WiFi網路、一衛星通信網路、一同軸通信網路、一乙太網路、一蜂巢式網路及/或任何其他種類的通信網路。儘管伺服器及用戶端展示及描述為經由網路而連接,但是應瞭解在各種實施方案中,該伺服器可在不利用一網路之情況下直接通信地耦合至該用戶端。
伺服器101可包含一或多個處理單元104、一或多個非暫時性儲存媒體105(其可採取但不限於以下形式:一磁性儲
存媒體;光學儲存媒體;磁光型儲存媒體;唯讀記憶體;隨機存取記憶體;可擦除式可程式化記憶體;快閃記憶體等等)及一或多個通信組件106。處理單元104可執行儲存在非暫時性儲存媒體105中之指令以主控一或多個軟體應用程式。在主控應用程式中,該處理單元可產生該應用程式之一或多個狀態,處理經由通信組件106自用戶端102所接收的使用者輸入以產生該應用程式之一或多個狀態,及/或實行該主控之應用程式之其他此類處理。
用戶端102可包含一或多個處理單元107、一或多個非暫時性儲存媒體108(其可採取但不限於以下形式:一磁性儲存媒體;光學儲存媒體;磁光型儲存媒體;唯讀記憶體;隨機存取記憶體;可擦除式可程式化記憶體;快閃記憶體等等)、一或多個通信組件109;及一或多個輸入/輸出組件110(其可自一或多個相關聯之輸入/輸出裝置111(諸如一或多個監視器、鍵盤、滑鼠及其他此等輸入及/或輸出裝置)接收輸入及/或將輸出提供給一或多個相關聯之輸入/輸出裝置111)。處理單元107可執行儲存於非暫時性儲存媒體108中之指令以經由通信組件109自伺服器101接收應用程式之一或多個狀態,經由輸入/輸出組件110將該應用程式之此等狀態提供給一或多個使用者,針對該應用程式經由該輸入/輸出組件而自該使用者接收輸入,經由通信組件109將此輸入傳輸至該伺服器,及/或實行該應用程式之其他此類用戶端側操作。
伺服器101可經由通信組件106而將應用程式之一第一狀
態傳輸至用戶端。該伺服器可判定對該第一狀態之一或多個期望之用戶端回應將係一有限組之可能的回應之一或多者。由於可能的用戶端回應係有限的,故該伺服器可在此等回應之實際接收前基於該等可能的回應之一或多者而產生一或多個額外狀態,使得當接收對應之用戶端回應時可能已可用該等額外狀態。該伺服器可經由通信組件106而將此等產生之額外狀態提供給用戶端102。
例如,主控一視訊遊戲應用程式之一伺服器可提供該視訊遊戲之一起始狀態。該伺服器可判定回應於該視訊遊戲之起始狀態而期望使用者輸入以便使用者玩該視訊遊戲。該伺服器亦可判定該期望之使用者輸入將指示一相關聯之視訊遊戲控制器上之一或多個按鈕之選擇,因為該選擇係該視訊遊戲經組態以接收之唯一的使用者輸入。因此,預期該使用者可選擇該等按鈕之一或多者,該伺服器可基於該等按鈕之一者之選擇而產生一額外狀態,因為預期回應於該視訊遊戲之起始狀態而可由該使用者選擇各自按鈕。此一視訊遊戲控制器可包含相對小數目個按鈕,諸如七個。如此,可僅需要該伺服器預期地產生七個不同狀態使得當選擇該等按鈕之一者時(而不管實際上選擇哪個按鈕)已可用該產生之狀態。
在各種實施方案中,當實際上自用戶端接收特定可能的回應時,伺服器101可將利用一特定可能的回應所產生的額外狀態提供給用戶端102。在實際上接收利用以產生一額外狀態之該特定可能的回應前,可由該伺服器將該產生
之額外狀態儲存諸如在非暫時性儲存媒體105上。在此等實施方案中,若儲存一或多個產生之額外狀態直至實際上接收利用以產生各自額外狀態之特定可能的回應為止,則若自該用戶端接收一不同的特定可能的回應,則該伺服器可中斷儲存針對一特定可能的回應所產生的額外狀態。
然而,在各種其他實施方案中,當產生利用一特定可能的回應所產生的額外狀態時,伺服器101可將該額外狀態提供給用戶端102。該用戶端可儲存該接收之額外狀態(諸如在非暫時性儲存媒體108上)直至經由輸入/輸出組件110接收等於該特定可能的回應之使用者輸入為止,因此該用戶端可經由該輸入/輸出組件而呈現該額外狀態。在此等其他實施方案中,若儲存一或多個產生之額外狀態直至實際上接收利用以產生各自額外狀態之特定可能的回應為止,則若經由該輸入/輸出組件接收對應於一不同的特定可能的回應之使用者輸入,則該用戶端可中斷儲存針對一特定可能的回應所產生的額外狀態。
此外,在一些實施方案中,伺服器101可產生可能的回應之各者之一額外狀態。如此,當實際上接收對應之用戶端回應時,可能已可用對應於所接收之任何一個可能的回應之額外狀態。然而,在其他實施方案中,該伺服器可產生選擇數目個可能的回應之額外狀態。在此等其他實施方案中,該伺服器可利用種類繁多的不同技術之一或多者以選擇哪些可能的回應而針對其產生額外狀態。下文更詳細討論此等技術。
圖2圖解說明藉由預期之預處理減少伺服之應用程式之潛時之一方法200。方法200可由圖1之伺服器101實行。流程開始於方塊201處且前進至處理由該伺服器所主控的軟體應用程式之方塊202。流程接著前進至該伺服器判定是否傳輸該軟體應用程式之一狀態之方塊203。若是,則流程前進至方塊204。否則,流程前進至該伺服器判定該軟體應用程式是否已結束之方塊213。若是,則流程前進至方塊204並結束。否則,流程返回至該軟體應用程式繼續處理之方塊202。
在方塊204處,於伺服器101判定傳輸軟體應用程式之一狀態後,該伺服器傳輸該狀態且流程前進至方塊205。在方塊205處,該伺服器判定是否期望對該傳輸之狀態之一回應及將係一有限組之可能的回應之一者。若是,則流程前進至方塊206。否則,在流程前進至方塊212前,流程前進至該伺服器等待該期望之回應之方塊211。在方塊212處,該伺服器判定是否已接收該回應。若是,則流程返回至該軟體應用程式繼續處理之方塊202。否則,流程返回至該伺服器繼續等待該期望之回應之方塊211。
在方塊206處,於伺服器101判定期望對傳輸之狀態之一回應及該回應將係一有限組之可能的回應之一者後,該伺服器基於該有限組之可能的回應中之可能的回應而判定產生哪些狀態。流程接著前進至該伺服器產生該等判定之狀態之方塊207。其次,在流程前進至方塊209前,流程前進至該伺服器等待該期望之回應之方塊208。在方塊209處,
該伺服器判定是否已接收該回應。若否,則流程返回至該伺服器繼續等待該期望之回應之方塊208。
否則,流程前進至伺服器101傳輸對應於接收之回應的產生之狀態之方塊210。流程接著前進至該伺服器判定是否期望對該傳輸之所產生狀態之一回應及該回應將係一有限組之可能的回應之一者之方塊205。
儘管方法200圖解說明及描述為當實際上接收利用以產生一狀態之一回應時傳輸該產生之狀態,但是應瞭解此僅係一實例。在其他的機率中,當產生該等狀態時伺服器101可傳輸該等產生之狀態。在此等機率中,當接收對應於利用以產生此等狀態之可能的回應之使用者輸入時,用戶端102可利用此等接收之所產生狀態。
返回至圖1,如上文所討論,在一些實施方案中,伺服器101可利用種類繁多的不同技術之一或多者以選擇哪些可能的回應而針對其產生額外狀態。現將鑽研此等不同技術之實例。然而,本文所鑽研的實例僅用於實例之目的。可在不背離本揭示內容之範疇之情況下利用選擇哪些可能的回應而針對其產生額外狀態之其他技術(及/或該等呈現的技術之組合)。
在一第一實例實施方案中,伺服器101可分析有限組之可能的回應且將該等可能的回應之各者定義為潛在的潛時起因或非潛在的潛時起因。該伺服器可接著產生定義為潛在的潛時起因之該等可能的回應之各者之額外狀態,但是可能不產生定義為潛在的潛時起因之該等可能的回應之額
外狀態。例如,該伺服器可將可能需要該伺服器編碼視訊框之可能的回應定義為潛在的潛時起因,然而該伺服器可將一預先存在選單重疊在預先存在視訊框上之可能的回應定義為非潛在的潛時起因。
藉由產生更可能引起較大時間延遲之可能回應之額外狀態,伺服器需要在請求時提供該額外狀態但不是不可能引起此等延遲之可能的回應之額外狀態,該伺服器可最小化所花之預期之處理時間之量同時最小化傳輸請求之額外狀態所需要之時間。即使可能必須在接收請求此之實際回應後產生不定義為潛時起因之可能的回應之額外狀態,但是由於此等額外狀態較不可能致使處理中之潛時,接著在接收該回應後產生此等額外狀態仍不可能引起不可接受的潛時。
在一第二實例實施方案中,伺服器101可產生比其他可能的回應更可能實際上被接收之可能的回應之數個回應之額外狀態。該伺服器可基於先前所接收之回應之統計分析而判定實際上將接收一特定可能的回應之機率。例如,應用程式可經組態以回應於一特定應用程式狀態而接受十個不同輸入,但是通常可回應於該特定應用程式狀態而選擇該等輸入之僅四者。該伺服器可判定該十個可能的輸入之四個輸入在統計上比其他六個輸入更為可能且可產生該四個輸入之各者之額外狀態。
藉由產生更可能實際上被選擇之可能的回應之額外狀態,伺服器可最小化所花之預期之處理時間之量,同時最
大化已產生一請求之狀態之可能性且因此最小化回應時間。即使可能必須在接收請求此之實際回應後產生其他六個輸入之額外狀態,但是由於較不可能請求此等額外狀態,故關於隨時間產生此等額外狀態之延遲之頻率可引起可接受的一聚合之延遲時間。
在一第三實例實施方案中,伺服器101可產生基於該伺服器之一目前負載(諸如一目前處理負載)選擇之數個可能的回應之額外狀態。以此方式,該伺服器可基於可用資源調整該伺服器嘗試實行之預期之處理之量。該伺服器可接著產生選擇數目個額外狀態。例如,若該伺服器目前不實行任何其他任務,則該伺服器可選擇產生所有可能的回應之額外狀態。相比之下,若該伺服器實行數個其他任務但仍具有可用資源,則該伺服器可產生一半的可能的回應之額外狀態。此外,若該伺服器不具有可用資源,則該伺服器可產生該等可能的回應之一者之一額外狀態或不產生該等可能的回應之一額外狀態。藉由基於該伺服器產生此等狀態之能力而選擇數個待產生之額外狀態,當該伺服器具有用於此處理之可用資源時該伺服器可實行更多預期之處理,同時當該伺服器不具有此等可用資源時實行較少預期之處理。
圖3A至圖3E係對應於由一系統針對一使用者所顯示的一視訊遊戲之狀態之視訊遊戲螢幕300A至300E。該系統可係圖1之系統。如在圖3A中所圖解說明,螢幕300A包含一環境中之一角色替身。在此狀態中,該視訊遊戲經組態
以接受指示使該角色替身右移、左移、彈踢及跳躍之使用者輸入。在回應於在螢幕300A中所描繪的狀態而接收此使用者輸入前,該系統可產生上文四個可能的使用者輸入之各者之額外狀態。
圖3B圖解說明描繪利用使用者將指示使角色替身右移之假設所產生的一狀態之一螢幕300B。圖3C圖解說明描繪利用使用者將指示使角色替身跳躍之假設所產生的一狀態之一螢幕300C。圖3D圖解說明描繪利用使用者將指示使角色替身彈踢之假設所產生的一狀態之一螢幕300D。圖3E圖解說明描繪利用使用者將指示使角色替身左轉之假設所產生的一狀態之一螢幕300E。
再次參考圖3A,繼系統產生額外狀態後,該系統可回應於由螢幕300A所描繪的狀態而接收使用者輸入。該系統可接著傳輸對應於由該使用者輸入所指示的選項之對應之額外狀態。例如,若該使用者輸入指定使角色替身右移,則該系統可傳輸由圖3B中之螢幕300B所描繪的額外狀態。由於在接受該使用者輸入前已產生該狀態,故該伺服器可不藉由必須產生該狀態而致使延遲且可替代地立即傳送適當的狀態。
在本揭示內容中,所揭示的方法可實施為可由一裝置所讀取的指令集或軟體。此外,應瞭解所揭示的方法中之步驟之特定次序或階層係樣本途徑之實例。在其他實施例中,方法中之步驟之特定次序或階層可被重新配置同時維持在所揭示的標的內。隨附方法主張按一樣本次序之各種
步驟之當前元件,且並不一定意指限於所呈現的特定次序或階層。
所述的揭示內容可提供為一電腦程式產品或軟體,該電腦程式產品或軟體可包含已將指令儲存於其上之一非暫時性機器可讀取媒體,該等指令可用以程式化一電腦系統(或其他電子裝置)以實行根據本揭示內容之一程序。一非暫時性機器可讀取媒體包含用於儲存按可由一機器(例如,一電腦)讀取的一形式(例如,軟體、處理應用程式)之資訊之任何機構。該非暫時性機器可讀取媒體可採取但不限於以下形式:一磁性儲存媒體(例如,軟碟、視訊卡帶等等);光學儲存媒體(例如,CD-ROM);磁光型儲存媒體;唯讀記憶體(ROM);隨機存取記憶體(RAM);可擦除式可程式化記憶體(例如,EPROM及EEPROM);快閃記憶體等等。
據信將藉由先前描述而瞭解本揭示內容及許多其伴隨的優點,且將明白可在不背離所揭示的標的之情況下或在不犧牲其所有其材料優點之情況下作出按組件之形式、結構及配置之各種變更。但是所述的形式僅係說明性的,且意欲下文申請專利範圍涵蓋且包含此等變更。
雖然已參考各種實施例描述本揭示內容,但是應瞭解此等實施例係闡釋性的且本揭示內容之範疇不限於此等實施例。許多變動、修改、添加及改良係可能的。更一般而言,在上下文或特定實施例中已描述根據本揭示內容之實施例。功能性可在本揭示內容之各種實施例之不同區塊中
被分開或組合或用不同術語來描述。此等變動、修改、添加及改良以及其他變動、修改、添加及改良可落於如在下文申請專利範圍中所定義的本揭示內容之範疇內。
100‧‧‧系統
101‧‧‧伺服器
102‧‧‧用戶端
103‧‧‧網路
104‧‧‧處理單元
105‧‧‧非暫時性儲存媒體
106‧‧‧通信組件
107‧‧‧處理單元
108‧‧‧非暫時性儲存媒體
109‧‧‧通信組件
110‧‧‧輸入/輸出組件
111‧‧‧輸入/輸出裝置
圖1係圖解說明藉由預期之預處理減少伺服之應用程式之潛時之一系統之一方塊圖。
圖2係圖解說明藉由預期之預處理減少伺服之應用程式之潛時之一方法之一流程圖。此方法可由圖1之系統實行。
圖3A至圖3E係圖解說明對應於由一系統針對一使用者所顯示的一視訊遊戲之狀態之視訊遊戲螢幕之圖。該系統可係圖1之系統。
Claims (18)
- 一種藉由預期之預處理減少伺服之應用程式之潛時之方法,該方法包括:自至少一伺服器將至少一應用程式之至少一第一狀態傳輸至至少一用戶端,該至少一伺服器主控該至少一應用程式;利用該至少一伺服器判定來自該至少一用戶端對該至少一第一狀態之至少一期望之用戶端回應將係一有限組之可能的用戶端回應之至少一者;在自該至少一用戶端接收該至少一期望之用戶端回應前,利用該至少一伺服器利用來自該有限組之可能的用戶端回應之至少一可能的用戶端回應產生該至少一應用程式之至少一額外狀態;及自該至少一伺服器將該至少一額外狀態提供給該至少一用戶端,其中自該至少一伺服器將該至少一額外狀態提供給該至少一用戶端之該操作進一步包括在接收該有限組之可能的用戶端回應之一者前,自該至少一伺服器將該至少一額外狀態提供給該至少一用戶端。。
- 如請求項1之方法,其中自該至少一伺服器將該至少一額外狀態提供給該至少一用戶端之該操作進一步包括:回應於接收該至少一期望之用戶端回應而自該至少一伺服器將該至少一額外狀態提供給該至少一用戶端,其中該至少一期望之用戶端回應等於該至少一潛在的用戶端 回應。
- 如請求項1之方法,其中當對應於該至少一期望之用戶端回應之至少一使用者輸入等於該至少一可能的用戶端回應時,該至少一用戶端利用該提供之至少一額外狀態。
- 如請求項1之方法,其中在自該至少一用戶端接收該至少一期望之用戶端回應前利用該至少一伺服器利用來自該有限組之可能的用戶端回應之至少一可能的用戶端回應產生該至少一應用程式之至少一額外狀態之該操作進一步包括:利用該各自可能的用戶端回應產生該有限組之可能的用戶端回應之各可能的用戶端回應之至少一狀態。
- 如請求項1之方法,其中在自該至少一用戶端接收該至少一期望之用戶端回應前利用該至少一伺服器利用來自該有限組之可能的用戶端回應之至少一可能的用戶端回應產生該至少一應用程式之至少一額外狀態之該操作進一步包括:將該有限組之可能的用戶端回應之各者定義為潛在的潛時起因或非潛在的潛時起因;及利用該各自可能的用戶端回應產生定義為潛在的潛時起因之該有限組之可能的用戶端回應之各可能的用戶端回應之至少一狀態。
- 如請求項1之方法,其中在自該至少一用戶端接收該至少一期望之用戶端回應前利用該至少一伺服器利用來自 該有限組之可能的用戶端回應之至少一可能的用戶端回應產生該至少一應用程式之至少一額外狀態之該操作進一步包括:判定該有限組之可能的用戶端回應之各可能的用戶端回應將等於該至少一期望之用戶端回應之一機率;及利用該各自可能的用戶端回應產生該有限組之可能的用戶端回應之數個可能的用戶端回應之各者之至少一狀態,該數個可能的用戶端回應具有比該有限組之可能的用戶端回應之其他可能的用戶端回應更高的一判定之機率。
- 如請求項6之方法,其中基於先前的用戶端回應之統計分析而判定該有限組之可能的用戶端回應之各可能的用戶端回應將等於該至少一期望之用戶端回應之該機率。
- 如請求項1之方法,其中在自該至少一用戶端接收該至少一期望之用戶端回應前利用該至少一伺服器利用來自該有限組之可能的用戶端回應之至少一可能的用戶端回應產生該至少一應用程式之至少一額外狀態之該操作進一步包括:判定該伺服器之一目前負載;及利用該各自可能的用戶端回應產生該有限組之可能的用戶端回應之選擇數目個可能的用戶端回應之各者之至少一狀態,其中該選擇數目個用戶端回應之選擇係基於該伺服器之該判定之目前負載。
- 如請求項1之方法,其中該至少一應用程式包括至少一 視訊遊戲。
- 一種藉由預期之預處理減少伺服之應用程式之潛時之系統,該系統包括:至少一通信組件,其經組態以與至少一用戶端通信;至少一非暫時性儲存媒體,其儲存至少一系列指令;及至少一處理單元,其執行該至少一系列指令以:經由該至少一通信組件將由該至少一處理單元所主控的至少一應用程式之至少一第一狀態傳輸至該至少一用戶端;判定來自該至少一用戶端對該至少一第一狀態之至少一期望之用戶端回應將係一有限組之可能的用戶端回應之至少一者;在經由該至少一通信組件自該至少一用戶端接收該至少一期望之用戶端回應前,利用來自該有限組之可能的用戶端回應之至少一可能的用戶端回應產生該至少一應用程式之至少一額外狀態;及經由該至少一通信組件將該至少一額外狀態提供給該至少一用戶端,其中在接收該有限組之可能的用戶端回應之一者前,該至少一處理單元經由該至少一通信組件將該至少一額外狀態提供給該至少一用戶端。
- 如請求項10之系統,其中該至少一處理單元判定一目前處理負載且利用該各自可能的用戶端回應產生該有限組之可能的用戶端回應之選擇數目個可能的用戶端回應之 各者之至少一狀態,其中該至少一處理單元基於該判定之目前處理負載選擇該選擇數目。
- 如請求項10之系統,其中該至少一處理單元判定該有限組之可能的用戶端回應之各可能的用戶端回應將等於該至少一期望之用戶端回應之一機率且利用該各自可能的用戶端回應產生該有限組之可能的用戶端回應之數個可能的用戶端回應之各者之至少一狀態,該數個可能的用戶端回應具有比該有限組之可能的用戶端回應之其他可能的用戶端回應更高的一判定之機率。
- 如請求項12之系統,其中該至少一處理單元藉由實行先前的用戶端回應之統計分析而判定該有限組之可能的用戶端回應之各可能的用戶端回應將等於該至少一期望之用戶端回應之該機率。
- 如請求項10之系統,其中該至少一處理單元將該有限組之可能的用戶端回應之各者定義為潛在的潛時起因或非潛在的潛時起因且利用該各自可能的用戶端回應產生定義為潛在的潛時起因之該有限組之可能的用戶端回應之各可能的用戶端回應之至少一狀態。
- 如請求項10之系統,其中該至少一處理單元利用該各自可能的用戶端回應產生該有限組之可能的用戶端回應之各可能的用戶端回應之至少一狀態。
- 如請求項10之系統,其進一步包括該至少一用戶端,其中當對應於該至少一期望之用戶端回應之至少一使用者輸入等於該至少一可能的用戶端回應時,該至少一用戶 端利用該提供之至少一額外狀態。
- 如請求項10之系統,其中回應於經由該至少一通信組件接收該至少一期望之用戶端回應,該至少一處理單元經由該至少一通信組件將該至少一額外狀態提供給該至少一用戶端,其中該至少一期望之用戶端回應等於該至少一潛在的用戶端回應。
- 一種電腦程式產品,其包括:一第一組指令,其儲存在至少一非暫時性機器可讀取媒體中,可由至少一處理單元執行以自至少一伺服器將至少一應用程式之至少一第一狀態傳輸至至少一用戶端,該至少一伺服器主控該至少一應用程式;及一第二組指令,其儲存在該至少一非暫時性機器可讀取媒體中,可由該至少一處理單元執行以判定來自該至少一用戶端對該至少一第一狀態之至少一期望之用戶端回應將係一有限組之可能的用戶端回應之至少一者;一第三組指令,其儲存在該至少一非暫時性機器可讀取媒體中,可由該至少一處理單元執行以在自該至少一用戶端接收該至少一期望之用戶端回應前利用來自該有限組之可能的用戶端回應之至少一可能的用戶端回應產生該至少一應用程式之至少一額外狀態;及一第四組指令,其儲存在該至少一非暫時性機器可讀取媒體中,可由該至少一處理單元執行以在接收該有限組之可能的用戶端回應之一者前,將該至少一額外狀態提供給該至少一用戶端。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/090,024 US8751564B2 (en) | 2011-04-19 | 2011-04-19 | Reducing latency for served applications by anticipatory preprocessing |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201305832A TW201305832A (zh) | 2013-02-01 |
TWI475407B true TWI475407B (zh) | 2015-03-01 |
Family
ID=46025941
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW101114010A TWI475407B (zh) | 2011-04-19 | 2012-04-19 | 藉由預期之預處理減少伺服之應用程式之潛時 |
Country Status (8)
Country | Link |
---|---|
US (1) | US8751564B2 (zh) |
EP (1) | EP2700023B1 (zh) |
CN (1) | CN103502977B (zh) |
BR (1) | BR112013026571B1 (zh) |
CA (1) | CA2833346C (zh) |
MX (1) | MX2013012095A (zh) |
TW (1) | TWI475407B (zh) |
WO (1) | WO2012145315A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8739186B2 (en) | 2011-10-26 | 2014-05-27 | Autodesk, Inc. | Application level speculative processing |
US9009734B2 (en) * | 2012-03-06 | 2015-04-14 | Autodesk, Inc. | Application level speculative processing |
US11823016B2 (en) * | 2019-05-29 | 2023-11-21 | Bank Of America Corporation | Optimized IoT data processing for real-time decision support systems |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020054104A1 (en) * | 1998-11-03 | 2002-05-09 | Stephen C. Berczik | Anticipatory processing for a graphical user interface |
TW200413969A (en) * | 2002-10-18 | 2004-08-01 | Ibm | Method and system for online analytical processing (OLAP) |
US20080109401A1 (en) * | 2006-09-12 | 2008-05-08 | Microsoft Corporation | Presenting predetermined search results with query suggestions |
TW200842623A (en) * | 2007-01-18 | 2008-11-01 | Harris Corp | System and method for processing map images |
TW200939047A (en) * | 2007-11-15 | 2009-09-16 | Ibm | Processor-server hybrid system for processing data |
US7685144B1 (en) * | 2005-12-29 | 2010-03-23 | Google Inc. | Dynamically autocompleting a data entry |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6791580B1 (en) * | 1998-12-18 | 2004-09-14 | Tangis Corporation | Supplying notifications related to supply and consumption of user context data |
AU2003269448B2 (en) | 2002-10-30 | 2008-08-28 | Nds Limited | Interactive broadcast system |
US7634570B2 (en) * | 2003-03-12 | 2009-12-15 | Microsoft Corporation | Managing state information across communication sessions between a client and a server via a stateless protocol |
US7496500B2 (en) * | 2004-03-01 | 2009-02-24 | Microsoft Corporation | Systems and methods that determine intent of data and respond to the data based on the intent |
KR100643801B1 (ko) * | 2005-10-26 | 2006-11-10 | 엔에이치엔(주) | 복수의 언어를 연동하는 자동완성 추천어 제공 시스템 및방법 |
GB0524354D0 (en) * | 2005-11-30 | 2006-01-04 | Ibm | Method, system and computer program product for composing a reply to a text message received in a messaging application |
US9354804B2 (en) * | 2010-12-29 | 2016-05-31 | Microsoft Technology Licensing, Llc | Touch event anticipation in a computing device |
-
2011
- 2011-04-19 US US13/090,024 patent/US8751564B2/en active Active
-
2012
- 2012-04-17 BR BR112013026571-0A patent/BR112013026571B1/pt active IP Right Grant
- 2012-04-17 MX MX2013012095A patent/MX2013012095A/es active IP Right Grant
- 2012-04-17 CA CA2833346A patent/CA2833346C/en active Active
- 2012-04-17 CN CN201280019564.9A patent/CN103502977B/zh active Active
- 2012-04-17 EP EP12718511.4A patent/EP2700023B1/en active Active
- 2012-04-17 WO PCT/US2012/033935 patent/WO2012145315A1/en active Application Filing
- 2012-04-19 TW TW101114010A patent/TWI475407B/zh active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020054104A1 (en) * | 1998-11-03 | 2002-05-09 | Stephen C. Berczik | Anticipatory processing for a graphical user interface |
TW200413969A (en) * | 2002-10-18 | 2004-08-01 | Ibm | Method and system for online analytical processing (OLAP) |
US7685144B1 (en) * | 2005-12-29 | 2010-03-23 | Google Inc. | Dynamically autocompleting a data entry |
US20080109401A1 (en) * | 2006-09-12 | 2008-05-08 | Microsoft Corporation | Presenting predetermined search results with query suggestions |
TW200842623A (en) * | 2007-01-18 | 2008-11-01 | Harris Corp | System and method for processing map images |
TW200939047A (en) * | 2007-11-15 | 2009-09-16 | Ibm | Processor-server hybrid system for processing data |
Also Published As
Publication number | Publication date |
---|---|
CA2833346A1 (en) | 2012-10-26 |
MX2013012095A (es) | 2014-04-16 |
BR112013026571A2 (pt) | 2016-12-27 |
US20120271876A1 (en) | 2012-10-25 |
CA2833346C (en) | 2016-07-19 |
EP2700023B1 (en) | 2021-05-26 |
CN103502977B (zh) | 2016-08-24 |
TW201305832A (zh) | 2013-02-01 |
WO2012145315A1 (en) | 2012-10-26 |
BR112013026571B1 (pt) | 2021-11-03 |
EP2700023A1 (en) | 2014-02-26 |
US8751564B2 (en) | 2014-06-10 |
CN103502977A (zh) | 2014-01-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9272217B1 (en) | System and method for providing notifications to players of games | |
US10500505B2 (en) | Techniques to interact with an application via messaging | |
US8753183B2 (en) | Techniques to automatically provide assistance for electronic games | |
US10091281B1 (en) | Multi-user application host-system selection system | |
US20120060167A1 (en) | Method and system of simulating a data center | |
US20140274408A1 (en) | Methods and systems for provisioning a game container within a cloud computing system | |
CN104813309A (zh) | 用于远程显示器的基于云的虚拟化图形处理方法和系统 | |
TW201720115A (zh) | 個體網站的功耗估計 | |
Park et al. | Design and evaluation of mobile offloading system for web-centric devices | |
TWI475407B (zh) | 藉由預期之預處理減少伺服之應用程式之潛時 | |
CN111135586A (zh) | 游戏匹配方法、游戏匹配装置、存储介质与电子设备 | |
CN110286981A (zh) | 虚拟云桌面服务器的使用状态的显示方法及显示系统 | |
TWI493356B (zh) | 非同步通信的方法、非同步地與網路瀏覽器通信的方法,及用於與網路通信的系統 | |
CN106953933B (zh) | 一种消息推送方法及装置、电子设备 | |
CA3166394A1 (en) | Systems and methods for multi-client content delivery | |
WO2017185632A1 (zh) | 数据传输的方法及电子设备 | |
CN109316753A (zh) | 一种组队的方法、装置及电子设备 | |
US20170270165A1 (en) | Data streaming broadcasts in massively parallel processing databases | |
US20230177060A1 (en) | Matching system and display method using real-time event processing | |
CN118526787A (zh) | 一种云游戏切换方法、装置、设备、存储介质及产品 | |
CN114432693A (zh) | 一种数据同步方法、设备及介质 | |
WO2023044480A1 (en) | Collaborative user interface and systems and methods for providing same | |
CN111147464A (zh) | 一种联机房间服务器的确定方法、装置和电子设备 | |
CN118059464A (zh) | 装备试穿方法、装置和电子设备 | |
CN118045338A (zh) | 游戏操作控制方法、装置、电子设备及计算机存储介质 |