相關(guān)申請的交叉引證
本申請要求保護(hù)于2014年12月29日提交的美國專利申請第14/584,815號的優(yōu)先權(quán),通過引證將其全部內(nèi)容結(jié)合在此。
背景技術(shù):
將鄉(xiāng)村地理區(qū)域連接至電網(wǎng)和/或互聯(lián)網(wǎng)可能是困難的并且可能需要例如網(wǎng)絡(luò)運營商、政府機制、公用電力事業(yè)或其他機制進(jìn)行相當(dāng)大的投資。出于這些原因中的至少一部分原因,發(fā)展中國家的很多鄉(xiāng)村地區(qū)通常不能例如經(jīng)由電纜、電話線等接入連續(xù)的電源或硬線因特網(wǎng)連接。然而,隨著互聯(lián)網(wǎng)服務(wù)全世界的擴大使用,這些地區(qū)的人們有時使用移動設(shè)備,例如具有有限計算能力(例如,較慢的處理器和/或缺乏客戶端腳本執(zhí)行能力)的低端移動電話手機(“低端移動設(shè)備”)。在低端移動設(shè)備上執(zhí)行(也稱為,“運行”)的應(yīng)用通常實施客戶端-服務(wù)器架構(gòu),以將計算和存儲器消耗卸載至服務(wù)器,以便更好地促成用戶與用戶交互。然而,由于缺乏可靠的網(wǎng)絡(luò)基礎(chǔ)設(shè)施,用于這些移動設(shè)備的無線網(wǎng)絡(luò)可能遭受斷續(xù)性網(wǎng)絡(luò)中斷。對于實施常規(guī)的客戶端-服務(wù)器計算架構(gòu)的應(yīng)用,斷續(xù)性網(wǎng)絡(luò)中斷可能干擾應(yīng)用的正常運行,因為例如在需要指令或者數(shù)據(jù)時作為客戶端的應(yīng)用可能不能夠從其相應(yīng)的服務(wù)器接收該指令或者數(shù)據(jù)。
技術(shù)實現(xiàn)要素:
尤其在所附權(quán)利要求中公開了根據(jù)本發(fā)明的實施方式,涉及方法、儲存介質(zhì)、系統(tǒng)以及計算機程序產(chǎn)品,其中,還可以在另一個權(quán)利要求類別(例如,系統(tǒng))內(nèi)要求保護(hù)在一個權(quán)利要求類別(例如,方法)內(nèi)提及的任何特征。僅出于形式原因,選擇所附權(quán)利要求中的引用關(guān)系或回原。然而,也可要求保護(hù)故意后向引用任何上述權(quán)利要求(具體地,多個從屬權(quán)利要求)導(dǎo)致的任何主題內(nèi)容,以致權(quán)利要求及其特征的任何組合被公開并且不管在所附權(quán)利要求中選擇的從屬都可要求保護(hù)。要求保護(hù)的主題不僅包括如在所附權(quán)利要求中陳述的特征的組合而且還包括權(quán)利要求中特征的任何其他組合,其中,在權(quán)利要求中提到的每個特征可以與任何其他特征或者權(quán)利要求或權(quán)利要求中的其他特征的組合結(jié)合。此外,可以在分開的權(quán)利要求和/或與此處描述或描繪的任何實施方式或特征或者與所附權(quán)利要求的任何特征的任意結(jié)合中要求保護(hù)在此處描述和描繪的任何實施方式和特征。
在根據(jù)本發(fā)明的實施方式中,一種方法,包括:
在替身服務(wù)器處實現(xiàn)應(yīng)用服務(wù)替身,該應(yīng)用服務(wù)替身具有經(jīng)由回程網(wǎng)絡(luò)信道對于應(yīng)用服務(wù)服務(wù)器的至少斷續(xù)的網(wǎng)絡(luò)訪問,該應(yīng)用服務(wù)服務(wù)器用于向客戶端應(yīng)用程序提供應(yīng)用服務(wù);
通過保存連接至該替身服務(wù)器以訪問所述應(yīng)用服務(wù)的一個或多個終端用戶裝置的列表,建立服務(wù)群組;
由替身服務(wù)器,通過模擬由應(yīng)用服務(wù)提供的功能的至少子集,經(jīng)向終端用戶裝置提供本地化應(yīng)用服務(wù),其中,提供所述本地化應(yīng)用服務(wù)包括在替身服務(wù)器處,至少部分地本地處理來自所述終端用戶裝置中的至少一者的服務(wù)請求;以及
與所述應(yīng)用服務(wù)服務(wù)器異步通信,以完成所述服務(wù)請求。
提供本地化應(yīng)用服務(wù)進(jìn)一步可以包括:
在替身服務(wù)器處,接收來自服務(wù)群組中的至少第一終端用戶裝置的服務(wù)請求,其中,服務(wù)請求涉及服務(wù)群組中的第二終端用戶裝置;以及
通過以第一終端用戶裝置的名義將消息遞送至第二終端用戶裝置,至少部分地處理服務(wù)請求。
遞送消息是響應(yīng)于確定所述回程網(wǎng)絡(luò)信道不能被利用或確定不能到達(dá)所述應(yīng)用服務(wù)服務(wù)器。
處理所述服務(wù)請求可以包括:識別由所述服務(wù)請求指示、在所述服務(wù)請求中提及、或從所述服務(wù)請求中得出的消息。
與所述應(yīng)用服務(wù)服務(wù)器異步通信是響應(yīng)于確定所述回程網(wǎng)絡(luò)信道能夠被利用。
提供本地化應(yīng)用服務(wù)進(jìn)一步可以包括:
從所述終端用戶裝置中的一者接收對于媒體內(nèi)容的數(shù)據(jù)轉(zhuǎn)換請求;以及
通過利用存儲在所述替身服務(wù)器中的本地版本的處理模塊,使用所述應(yīng)用服務(wù)替身,對所述媒體內(nèi)容進(jìn)行轉(zhuǎn)換。
在根據(jù)本發(fā)明的實施方式中,方法進(jìn)一步可以包括:當(dāng)所述回程網(wǎng)絡(luò)信道能夠被利用時,從所述應(yīng)用服務(wù)服務(wù)器接收對本地版本的所述處理模塊的更新。
提供本地化應(yīng)用服務(wù)進(jìn)一步可以包括:
從所述終端用戶裝置中的請求裝置接收包含內(nèi)容標(biāo)識符的內(nèi)容提供請求;以及
經(jīng)由所述內(nèi)容標(biāo)識符,在所述替身服務(wù)器中的本地數(shù)據(jù)庫中對內(nèi)容進(jìn)行定位;以及
響應(yīng)于在所述本地數(shù)據(jù)庫中定位到所述內(nèi)容,將所述內(nèi)容供應(yīng)至所述請求裝置。
提供本地化應(yīng)用服務(wù)進(jìn)一步可以包括:
從所述終端用戶裝置中的請求裝置中接收包含內(nèi)容標(biāo)識符的內(nèi)容提供請求;以及
經(jīng)由所述內(nèi)容標(biāo)識符,在所述替身服務(wù)器中的本地數(shù)據(jù)庫中對內(nèi)容進(jìn)行定位;以及
響應(yīng)于不能在所述本地數(shù)據(jù)庫中定位到所述內(nèi)容,并且當(dāng)所述回程網(wǎng)絡(luò)信道能夠被利用時,從所述應(yīng)用服務(wù)服務(wù)器獲取所述內(nèi)容以傳遞至所述請求裝置。
提供本地化應(yīng)用服務(wù)進(jìn)一步可以包括:
從所述終端用戶裝置中的請求裝置中接收包含內(nèi)容標(biāo)識符的內(nèi)容提供請求;以及
經(jīng)由所述內(nèi)容標(biāo)識符,在所述替身服務(wù)器中的本地數(shù)據(jù)庫中對內(nèi)容進(jìn)行定位;以及
響應(yīng)于不能在所述本地數(shù)據(jù)庫中定位到所述內(nèi)容,并且當(dāng)所述回程網(wǎng)絡(luò)信道不能利用時,將對于所述內(nèi)容的內(nèi)容請求排入針對所述應(yīng)用服務(wù)服務(wù)器的隊列,以便后續(xù)傳遞至所述請求裝置。
提供本地化應(yīng)用服務(wù)進(jìn)一步可以包括:
從所述終端用戶裝置中的請求裝置中接收包含能夠發(fā)布內(nèi)容的內(nèi)容發(fā)布請求;以及
通過在將所述能夠發(fā)布內(nèi)容發(fā)送至所述應(yīng)用服務(wù)服務(wù)器之前使所述服務(wù)群組能夠獲得所述能夠發(fā)布內(nèi)容,在所述服務(wù)群組內(nèi)預(yù)先發(fā)布所述能夠發(fā)布內(nèi)容。
在根據(jù)本發(fā)明的又一實施方式中,存儲用于操作替身服務(wù)器的計算機可執(zhí)行指令的計算機可讀存儲器,包括:
用于在所述替身服務(wù)器中實現(xiàn)應(yīng)用服務(wù)替身的指令,其中,所述應(yīng)用服務(wù)替身具有經(jīng)由回程網(wǎng)絡(luò)信道對于應(yīng)用服務(wù)服務(wù)器的至少斷續(xù)的網(wǎng)絡(luò)訪問,其中,所述應(yīng)用服務(wù)服務(wù)器向客戶端應(yīng)用程序提供應(yīng)用服務(wù);
通過保存連接至所述替身服務(wù)器以訪問所述應(yīng)用服務(wù)的一個或多個終端用戶裝置的列表建立服務(wù)群組的指令;
用于在所述替身服務(wù)器處接收來自所述服務(wù)群組中的至少第一終端用戶裝置的服務(wù)請求的指令,其中,所述服務(wù)請求包括所述服務(wù)群組中的第二終端用戶裝置;以及
通過以所述第一終端用戶裝置的名義將消息遞送至所述第二終端用戶裝置來至少部分地處理所述服務(wù)請求的指令。
在根據(jù)本發(fā)明的又一實施方式中,計算機可讀存儲器進(jìn)一步可以包括:
經(jīng)由所述替身服務(wù)器,通過模擬由所述應(yīng)用服務(wù)提供給所述終端用戶裝置的功能的至少子集,提供本地化應(yīng)用服務(wù)的指令。
在根據(jù)本發(fā)明的又一實施方式中,計算機可讀存儲器進(jìn)一步可以包括:
當(dāng)所述回程網(wǎng)絡(luò)信道能夠被利用時,將所述服務(wù)請求異步地遞送至所述應(yīng)用服務(wù)服務(wù)器的指令。
在根據(jù)本發(fā)明的又一實施方式中,計算機可讀存儲器進(jìn)一步可以包括:
用于對以所述終端用戶裝置之一的名義對于所述應(yīng)用服務(wù)服務(wù)器的遠(yuǎn)程過程呼叫期間轉(zhuǎn)換參數(shù)的客戶端應(yīng)用程序存根進(jìn)行調(diào)用的指令。
在根據(jù)本發(fā)明的又一實施方式中,計算機可讀存儲器進(jìn)一步可以包括:
用于保存所述終端用戶裝置的設(shè)備配置文件以及所述終端用戶裝置相關(guān)的用戶配置文件的指令。
在根據(jù)本發(fā)明的進(jìn)一步實施方式中,替身服務(wù)器,包括:
一個或多個網(wǎng)絡(luò)接口,被配置為連接至一個或多個終端用戶裝置的本地集合,并且所述網(wǎng)絡(luò)接口被配置為經(jīng)由回程網(wǎng)絡(luò)信道至少斷續(xù)性地連接至應(yīng)用服務(wù)服務(wù)器,所述應(yīng)用服務(wù)服務(wù)器提供應(yīng)用服務(wù);
處理器,被配置為承載應(yīng)用服務(wù)替身,當(dāng)回程網(wǎng)絡(luò)信道能夠被利用時,所述應(yīng)用服務(wù)替身與所述應(yīng)用服務(wù)服務(wù)器通信,其中,所述應(yīng)用服務(wù)替身提供替身應(yīng)用編程接口(api);
其中,經(jīng)由所述應(yīng)用服務(wù)替身通過模擬由所述應(yīng)用服務(wù)提供給所述終端用戶裝置的功能的至少子集,所述替身api提供本地化應(yīng)用服務(wù);以及
存儲器,為所述終端用戶裝置的所述本地集合緩存內(nèi)容并追蹤所述終端用戶裝置的配置文件。
所述替身服務(wù)器可以是在為所述終端用戶裝置提供網(wǎng)絡(luò)訪問或聚合通信數(shù)據(jù)的網(wǎng)絡(luò)設(shè)備上實現(xiàn)的。
所述替身服務(wù)器可以是獨立于為所述終端用戶裝置提供網(wǎng)絡(luò)訪問的網(wǎng)絡(luò)設(shè)備實現(xiàn)的。
可以在終端用戶裝置中的一個上實現(xiàn)替身服務(wù)器。
在也能夠要求保護(hù)的根據(jù)本發(fā)明的又一實施方式中,一個或多個計算機可讀非易失性存儲介質(zhì)體現(xiàn)當(dāng)實行時能操作執(zhí)行根據(jù)本發(fā)明的方法或任何以上提及的實施方式的軟件。
在也能夠要求保護(hù)的根據(jù)本發(fā)明的另一實施方式中,系統(tǒng)包括:一個或多個處理器;以及耦接至處理器的至少一個存儲器,存儲器包括通過處理器可執(zhí)行的指令,當(dāng)執(zhí)行指令時處理器可操作為執(zhí)行根據(jù)本發(fā)明或上述實施方式的任一個的方法。
在也能夠要求保護(hù)的根據(jù)本發(fā)明的另一實施方式中,計算機程序產(chǎn)品優(yōu)選地包括計算機可讀非易失性存儲介質(zhì),當(dāng)在數(shù)據(jù)處理系統(tǒng)執(zhí)行時能操作為執(zhí)行根據(jù)本發(fā)明或者上述任一個實施方式的方法。
附圖說明
圖1是示出了根據(jù)各種實施方式的鄉(xiāng)村聯(lián)網(wǎng)系統(tǒng)的網(wǎng)絡(luò)系統(tǒng)環(huán)境的框圖。
圖2是示出了根據(jù)各種實施方式實現(xiàn)鄉(xiāng)村聯(lián)網(wǎng)系統(tǒng)的鄉(xiāng)村邊緣上的應(yīng)用服務(wù)替身的潛在位置的框圖。
圖3是示出了根據(jù)各種實施方式可以用于實現(xiàn)應(yīng)用服務(wù)替身的系統(tǒng)環(huán)境的實例的框圖。
圖4是示出了根據(jù)各種實施方式的應(yīng)用服務(wù)替身的應(yīng)用編程接口(api)的功能框圖。
圖5是示出了根據(jù)各種實施方式的操作計算裝置(作為應(yīng)用服務(wù)替身)的方法的流程圖。
圖6是根據(jù)各種實施方式的計算裝置(其可以表示本文中描述的一個或多個計算裝置或服務(wù)器)的實例的框圖。
附圖僅為了說明的目的描述了本公開內(nèi)容的各種實施方式。本領(lǐng)域技術(shù)人員從下列討論中容易認(rèn)識到,在不背離本文所描述的本發(fā)明的原理的情況下,可以采用本文示出的結(jié)構(gòu)和方法的可替換實施方式。
具體實施方式
數(shù)個實施方式包括在本地網(wǎng)絡(luò)島中實現(xiàn)應(yīng)用服務(wù)“替身”,該本地網(wǎng)絡(luò)島具有到廣域網(wǎng)(例如,互聯(lián)網(wǎng))并且因此到對應(yīng)于應(yīng)用服務(wù)替身的一個或多個應(yīng)用服務(wù)服務(wù)器的斷續(xù)的連接性。斷續(xù)的連接性可能具有高延遲和/或低帶寬(例如,時間切片帶寬共享),并且可能頻繁不可用。每個應(yīng)用服務(wù)替身可以對應(yīng)于應(yīng)用服務(wù)和提供應(yīng)用服務(wù)的一個或多個應(yīng)用服務(wù)服務(wù)器。例如,應(yīng)用服務(wù)可以是消息遞送服務(wù)、社交網(wǎng)絡(luò)服務(wù)、照片共享服務(wù)、內(nèi)容搜索服務(wù)、協(xié)作服務(wù)、其他免費基本服務(wù)(fbs)、或它們的任意組合。按慣例,在不存在應(yīng)用服務(wù)替身的情況下,一個或多個終端用戶裝置可直接從一個或多個應(yīng)用服務(wù)服務(wù)器請求應(yīng)用服務(wù)。例如,終端用戶裝置可在其上執(zhí)行客戶端程序,該客戶端程序被配置為接入一個或多個應(yīng)用服務(wù)服務(wù)器的服務(wù)器服務(wù)應(yīng)用編程接口(“api”)。例如,客戶端程序可實現(xiàn)為移動式應(yīng)用、臺式應(yīng)用、基于瀏覽器的應(yīng)用、或它們的任意組合。
可在替身服務(wù)器上實現(xiàn)應(yīng)用服務(wù)替身。替身服務(wù)器具有計算能力;具有為本地集合的終端用戶裝置緩存的內(nèi)容并追蹤終端用戶裝置的配置文件的存儲能力;具有到本地集合的終端用戶裝置的連續(xù)的連接性(而本地集合的成員可隨著時間改變);以及至少具有到一個或多個應(yīng)用服務(wù)服務(wù)器的斷續(xù)的連接性。替身服務(wù)器可提供承載單個應(yīng)用服務(wù)替身(例如,作為虛擬機或在替身服務(wù)器上運行的替身應(yīng)用進(jìn)程)或者多個應(yīng)用服務(wù)替身的平臺。
每個應(yīng)用服務(wù)替身至少可保留在不存在應(yīng)用服務(wù)替身的情況下一個或多個應(yīng)用服務(wù)服務(wù)器正常提供給終端用戶裝置的功能的子集。盡管僅具有對于應(yīng)用服務(wù)替身的斷續(xù)的連接性,但一個或多個應(yīng)用服務(wù)服務(wù)器可提供將服務(wù)功能暴露于應(yīng)用服務(wù)替身的委托api,并使應(yīng)用服務(wù)替身能夠至少模擬由一個或多個應(yīng)用服務(wù)服務(wù)器提供的服務(wù)功能的子集。例如,在該設(shè)置下,可例如由應(yīng)用服務(wù)替身部分地本地完成服務(wù)任務(wù),并且服務(wù)任務(wù)的完成可延遲直至斷續(xù)的連接性再次可用。
應(yīng)用服務(wù)替身進(jìn)而可實現(xiàn)替身api。替身api可以編程方式響應(yīng)于連接至應(yīng)用服務(wù)替身的本地網(wǎng)絡(luò)島中的終端用戶裝置(例如,移動電話手機或其他計算裝置)的服務(wù)請求、來自鎖定終端用戶裝置的一個或多個應(yīng)用服務(wù)服務(wù)器的處理命令、或它們的任意組合,將由一個或多個應(yīng)用服務(wù)服務(wù)器提供的服務(wù)功能的至少子集暴露于應(yīng)用。替身api也可以與一個或多個應(yīng)用服務(wù)服務(wù)器異步通信(例如,異步以接收服務(wù)請求,以便進(jìn)一步在一個或多個應(yīng)用服務(wù)服務(wù)器處理服務(wù)請求)。由替身api提供的這些服務(wù)功能可包括例如:識別本地集合的終端用戶裝置的配置文件,當(dāng)接收終端用戶請求但斷續(xù)的連接性不可用時的“存儲和轉(zhuǎn)發(fā)”功能,為本地集合的終端用戶裝置緩存(例如,來自一個或多個應(yīng)用服務(wù)服務(wù)器或者廣域(“核心”)網(wǎng))的內(nèi)容,等等。
所公開的實施方式使得能夠在“回程”網(wǎng)絡(luò)與終端用戶裝置之間的任何位置實現(xiàn)一個或多個替身服務(wù)器。回程網(wǎng)絡(luò)是網(wǎng)絡(luò)(例如,因特網(wǎng)或互聯(lián)網(wǎng))的一部分,其被配置為以斷續(xù)性連接的客戶端的名義將信息與連接至互聯(lián)網(wǎng)的服務(wù)器交換。例如,替身服務(wù)器可以是耦接至本地網(wǎng)絡(luò)接入點或聚合網(wǎng)絡(luò)設(shè)備的獨立服務(wù)器??商鎿Q地,替身服務(wù)器可與本地網(wǎng)絡(luò)接入點、聚合網(wǎng)絡(luò)設(shè)備、或終端用戶裝置集成。替身服務(wù)器可互相通信或促成終端用戶裝置上的應(yīng)用門戶與應(yīng)用服務(wù)服務(wù)器之間的經(jīng)延遲的交互。
應(yīng)用服務(wù)替身可服務(wù)于本地地理區(qū)域內(nèi)的終端用戶裝置。盡管存在斷續(xù)的網(wǎng)絡(luò)中斷,但應(yīng)用服務(wù)替身能夠提供連續(xù)服務(wù)(其可以是應(yīng)用服務(wù)服務(wù)器的服務(wù)功能的子集或者全部)。
應(yīng)用服務(wù)替身可具有到至少另一“網(wǎng)絡(luò)島”的斷續(xù)或連續(xù)網(wǎng)絡(luò)訪問,該網(wǎng)絡(luò)島為例如至少斷續(xù)性地連接至網(wǎng)絡(luò)和/或核心網(wǎng)絡(luò)(例如,互聯(lián)網(wǎng))的計算裝置的連接集合。例如,可利用衛(wèi)星(例如,低地球軌道或同步軌道衛(wèi)星)、無人駕駛飛行器或者其他航空器、火車、船只或者其他水基船舶、其他斷續(xù)連接的通信中繼、或它們的任意組合,通過連接至外部網(wǎng)絡(luò)建立斷續(xù)網(wǎng)絡(luò)連接。網(wǎng)絡(luò)島可一起形成“網(wǎng)狀”網(wǎng)絡(luò)。網(wǎng)狀網(wǎng)絡(luò)是其中每個網(wǎng)節(jié)點(例如,網(wǎng)絡(luò)設(shè)備)中繼網(wǎng)絡(luò)的數(shù)據(jù)并且在網(wǎng)絡(luò)中所有節(jié)點合作數(shù)據(jù)分布的網(wǎng)絡(luò)拓?fù)?。在一些實施方式中,一個或多個應(yīng)用服務(wù)替身可向網(wǎng)絡(luò)島中的用戶提供基本的社交網(wǎng)絡(luò)功能,包括新鮮事、消息遞送、媒體瀏覽等。當(dāng)回程網(wǎng)絡(luò)信道不可用時,應(yīng)用服務(wù)替身可緩沖來自網(wǎng)絡(luò)島中的一個或多個設(shè)備的輸出通信(例如,內(nèi)容、消息、數(shù)據(jù)請求等),并且當(dāng)回程網(wǎng)絡(luò)信道變得可用時可發(fā)送該輸出通信。當(dāng)回程網(wǎng)絡(luò)信道有效時,應(yīng)用服務(wù)替身也可以接收并緩存例如來自網(wǎng)絡(luò)島外部的計算裝置的傳入通信(例如,網(wǎng)頁、傳入消息、媒體內(nèi)容、文本、腳本程序、或者可執(zhí)行文件),使得當(dāng)回程網(wǎng)絡(luò)信道(因此,斷續(xù)網(wǎng)絡(luò)訪問)不可用時網(wǎng)絡(luò)島中的設(shè)備能夠訪問該資源。例如,應(yīng)用服務(wù)替身可緩存最近請求的資源、普遍請求的資源、以及與網(wǎng)絡(luò)島中用戶的偏好配置文件匹配的資源。應(yīng)用服務(wù)替身可向應(yīng)用服務(wù)服務(wù)器提供其用戶的身份。例如,社交網(wǎng)絡(luò)系統(tǒng)的應(yīng)用服務(wù)服務(wù)器可生成并存儲本地網(wǎng)島中的用戶的配置文件,以預(yù)測將何種配置文件專用資源“推送”到應(yīng)用服務(wù)替身進(jìn)行緩存。推送涉及其中由服務(wù)器(例如,應(yīng)用服務(wù)服務(wù)器)向目標(biāo)客戶端(例如,應(yīng)用服務(wù)替身)發(fā)起的數(shù)據(jù)傳輸請求的數(shù)據(jù)遞送通信。例如,應(yīng)用服務(wù)服務(wù)器可推送配置文件專用的資源、共同訪問的公共可用數(shù)據(jù)、或?qū)嶋H上任何其他類型的合適數(shù)據(jù)。
配置文件專用的資源可包括與在網(wǎng)絡(luò)島內(nèi)活躍的用戶配置文件相關(guān)聯(lián)的數(shù)據(jù)(例如,個人數(shù)據(jù))。用戶配置文件的配置文件專用資源還可以包括與附屬用戶配置文件相關(guān)聯(lián)的數(shù)據(jù)。例如,可基于用戶配置文件的配置文件偏好、屬性、行為、或活動來識別附屬社交網(wǎng)絡(luò)節(jié)點。由于地理親近(例如,在相同的城市或者閾值距離半徑以內(nèi))、社交親近(例如,在社交網(wǎng)絡(luò)系統(tǒng)的社交圖譜中的分離度閾值以內(nèi)社交連接至用戶配置文件)、或網(wǎng)絡(luò)親近(例如,在相同的網(wǎng)絡(luò)島內(nèi)),一不同的用戶配置文件可以附屬于用戶配置文件。
有利地,一些實施方式利用應(yīng)用服務(wù)替身向鄉(xiāng)村地區(qū)提供內(nèi)容訪問和應(yīng)用服務(wù)功能。應(yīng)用服務(wù)替身為源于具有斷續(xù)連接性和高延遲(例如,由于用于多個網(wǎng)絡(luò)構(gòu)成部分的時間切片/帶寬共享)的回程信道的帶寬限制提供技術(shù)解決方案。即使回程信道的斷續(xù)連接性,應(yīng)用服務(wù)替身仍能夠使應(yīng)用服務(wù)功能的至少子集遞送至終端用戶。即使在不存在回程信道的情況下,應(yīng)用服務(wù)替身的架構(gòu)通過將網(wǎng)絡(luò)中的服務(wù)器邏輯“更近”移動到終端用戶裝置,也提高網(wǎng)絡(luò)速度。應(yīng)用服務(wù)替身進(jìn)一步實現(xiàn)傳統(tǒng)客戶端-服務(wù)器架構(gòu)中的對等鏈路,而無需轉(zhuǎn)換成完整的對等架構(gòu)。一些應(yīng)用服務(wù)為鄉(xiāng)村地區(qū)提供基本通信手段和涉及人們的生活的基本信息更新。因此,即使僅存在斷續(xù)的回程連接,實現(xiàn)連續(xù)應(yīng)用服務(wù)也是非常有用的。
圖1是示出了根據(jù)各種實施方式的鄉(xiāng)村聯(lián)網(wǎng)系統(tǒng)100的網(wǎng)絡(luò)系統(tǒng)環(huán)境的框圖。鄉(xiāng)村聯(lián)網(wǎng)系統(tǒng)100包括網(wǎng)絡(luò)島(例如,網(wǎng)絡(luò)島102)的集合??捎删W(wǎng)絡(luò)設(shè)備104(例如,網(wǎng)絡(luò)裝置)建立每一個網(wǎng)絡(luò)島。網(wǎng)絡(luò)設(shè)備104可以是塔、盒、路由器、接入點、或者用于提供網(wǎng)絡(luò)連接性的其他電子硬件。在一些實施方式中,連接至網(wǎng)絡(luò)設(shè)備104的一個或多個裝置可建立另外的子網(wǎng)絡(luò),并且連接至那些子網(wǎng)絡(luò)的裝置仍可建立另外的較低級網(wǎng)絡(luò)等。
例如,網(wǎng)絡(luò)設(shè)備104可為終端用戶裝置106提供網(wǎng)絡(luò)連接性。終端用戶裝置106是計算裝置。例如,終端用戶裝置106可包括個人計算機、移動電話、平板電腦、可穿戴裝置、物聯(lián)網(wǎng)(iot)裝置、或者任何其他移動或固定裝置。可通過無線協(xié)議(例如,長期演進(jìn)(lte)、3g、2g、wi-fi、wi-fi直連、wimax、藍(lán)牙、藍(lán)牙le、或它們的任意組合)在終端用戶裝置106中建立網(wǎng)絡(luò)連接性。網(wǎng)絡(luò)連接性還可以基于有線協(xié)議,例如,通用串行總線(usb)或以太網(wǎng)。網(wǎng)絡(luò)連接性的網(wǎng)路架構(gòu)可以基于網(wǎng)狀網(wǎng)絡(luò)或星形網(wǎng)絡(luò)。
在一些實施方式中,網(wǎng)絡(luò)裝置中的每一個可以直接或間接連接至核心網(wǎng)絡(luò)108(例如,互聯(lián)網(wǎng)或其他區(qū)域網(wǎng)絡(luò))。例如,網(wǎng)絡(luò)設(shè)備104可以經(jīng)由回程網(wǎng)絡(luò)信道110連接至核心網(wǎng)絡(luò)108。回程網(wǎng)絡(luò)信道110是在其端點之間非連續(xù)地提供連接性的傳輸介質(zhì)。即,回程網(wǎng)絡(luò)信道110可以周期性地或者偶爾暫時停止工作?;爻叹W(wǎng)絡(luò)信道110的實例包括通過火車、無人機、衛(wèi)星、船只、或其任意組合實現(xiàn)的網(wǎng)絡(luò)。
在一些實施方式中,網(wǎng)絡(luò)設(shè)備104可以在網(wǎng)絡(luò)島102中的終端用戶裝置106中提供連續(xù)的連接性,并在終端用戶裝置106與核心網(wǎng)絡(luò)108之間提供非連續(xù)的連接性。網(wǎng)絡(luò)設(shè)備104還可以連接至其他網(wǎng)絡(luò)島。例如,網(wǎng)絡(luò)設(shè)備104可以經(jīng)由另一斷續(xù)網(wǎng)絡(luò)信道連接至另一基站,并且因此,另一網(wǎng)絡(luò)島中的其他計算裝置耦接至該另一基站。
由于回程網(wǎng)絡(luò)信道110施加的限制,網(wǎng)絡(luò)島102不能總是實時與耦接至核心網(wǎng)絡(luò)108的外部系統(tǒng)通信。因此,鄉(xiāng)村聯(lián)網(wǎng)系統(tǒng)100提供機制以促成經(jīng)由對應(yīng)于應(yīng)用服務(wù)服務(wù)器114(例如,社交網(wǎng)絡(luò)系統(tǒng)的應(yīng)用服務(wù)器、云應(yīng)用、或移動應(yīng)用服務(wù)器)的應(yīng)用服務(wù)替身112的異步應(yīng)用服務(wù)??梢栽诨爻叹W(wǎng)絡(luò)信道110與終端用戶裝置106之間(例如,包括兩者在內(nèi))實現(xiàn)應(yīng)用服務(wù)替身112,從而建立網(wǎng)絡(luò)島102。即,可以在鄉(xiāng)村聯(lián)網(wǎng)系統(tǒng)100的鄉(xiāng)村邊緣上實現(xiàn)應(yīng)用服務(wù)替身112。
在一些實施方式中,回程網(wǎng)絡(luò)信道110可以經(jīng)由一連串的網(wǎng)絡(luò)設(shè)備(例如,聚合服務(wù)器、基站、交換機、路由器、或者其他網(wǎng)絡(luò)使能的計算裝置)連接至終端用戶裝置106。到終端用戶裝置106最近的(例如,就網(wǎng)絡(luò)距離而言)可以是移動核心116,例如,演進(jìn)分組核心(epc)。epc提供匯集的語音和數(shù)據(jù)網(wǎng)絡(luò)框架以經(jīng)由蜂窩網(wǎng)絡(luò)(例如,長期演進(jìn)(lte)網(wǎng)絡(luò))連接用戶。
移動核心116可以連接至因特網(wǎng)服務(wù)提供商(isp)邊緣入網(wǎng)點(pop)118。isp邊緣pop118是通信實體之間的接口點。例如,isp邊緣pop118可以為移動核心116與應(yīng)用服務(wù)服務(wù)器114之間或者移動核心116與內(nèi)容交付網(wǎng)絡(luò)(cdn)120之間通信數(shù)據(jù)提供接口。cdn是基于用戶的地理位置向用戶遞送網(wǎng)頁和其他網(wǎng)絡(luò)內(nèi)容的分布式服務(wù)器系統(tǒng)。cdn120可專用于應(yīng)用服務(wù)或一組應(yīng)用服務(wù)(例如,用于社交網(wǎng)絡(luò)系統(tǒng)的應(yīng)用服務(wù))。cdn120可存儲用于應(yīng)用服務(wù)或該組應(yīng)用服務(wù)的靜態(tài)內(nèi)容。相反,應(yīng)用服務(wù)服務(wù)器114可響應(yīng)于來自終端用戶裝置106的服務(wù)請求生成動態(tài)內(nèi)容,包括響應(yīng)于服務(wù)請求生成對于由cdn120提供的靜態(tài)內(nèi)容的鏈接。當(dāng)cdn120已緩存與服務(wù)請求所指向的應(yīng)用服務(wù)相關(guān)聯(lián)的靜態(tài)內(nèi)容,cdn120可訪問應(yīng)用服務(wù)的數(shù)據(jù)中心122。在一些實施方式中,對存儲在cdn120中的內(nèi)容進(jìn)行加密或編碼以防止非授權(quán)訪問。
應(yīng)用服務(wù)替身112可對應(yīng)于由應(yīng)用服務(wù)服務(wù)器114提供的應(yīng)用服務(wù)。例如,應(yīng)用服務(wù)可以是消息遞送服務(wù)、社交網(wǎng)絡(luò)服務(wù)、照片共享服務(wù)、內(nèi)容搜索服務(wù)、協(xié)作服務(wù)、其他免費基本服務(wù)、或它們的任意組合。常規(guī)地,在不存在應(yīng)用服務(wù)替身的情況下,一個或多個終端用戶裝置可直接請求來自應(yīng)用服務(wù)服務(wù)器的應(yīng)用服務(wù)。例如,終端用戶裝置可在其上執(zhí)行客戶端程序,該客戶端程序被配置為訪問應(yīng)用服務(wù)服務(wù)器114的應(yīng)用服務(wù)api124。例如,客戶端程序可以是一個或多個移動應(yīng)用、桌面應(yīng)用、基于瀏覽器的應(yīng)用(例如,基于java腳本、基于flash等)、或它們的任意組合。
應(yīng)用服務(wù)替身112可實現(xiàn)為虛擬機或在替身服務(wù)器126上運行的應(yīng)用線程。應(yīng)用服務(wù)替身112可訪問(例如,讀取或?qū)懭?替身服務(wù)器126上的、專用于或分配給應(yīng)用服務(wù)替身112的存儲空間128。在一些實施方式中,存儲空間128部分或全部用密碼鍵加密,該密碼鍵僅能夠由應(yīng)用服務(wù)服務(wù)器114的經(jīng)認(rèn)證的代理訪問。替身服務(wù)器126具有計算能力;具有為終端用戶裝置(例如,終端用戶裝置106)的本地集合緩存內(nèi)容并追蹤終端用戶裝置的配置文件的存儲能力;具有到終端用戶裝置的本地集合(盡管本地集合的成員可隨著時間改變)的連續(xù)的連接性;以及具有到應(yīng)用服務(wù)服務(wù)器114的斷續(xù)的連接性(例如,回程網(wǎng)絡(luò)信道110)。替身服務(wù)器126可提供平臺以僅承載應(yīng)用服務(wù)替身112(即,單個實例)或包括應(yīng)用服務(wù)替身112的多個應(yīng)用服務(wù)替身(即,多個實例)。
應(yīng)用服務(wù)替身112可保留在不存在應(yīng)用服務(wù)替身112的情況下應(yīng)用服務(wù)服務(wù)器114通常提供給終端用戶裝置(例如,終端用戶裝置106)的功能的至少子集。應(yīng)用服務(wù)服務(wù)器114可提供委托api130,盡管對應(yīng)用服務(wù)替身112的斷續(xù)的連接性,委托api將服務(wù)功能暴露于應(yīng)用服務(wù)替身112并使應(yīng)用服務(wù)替身112能夠模擬由應(yīng)用服務(wù)服務(wù)器114提供的服務(wù)功能的至少子集。例如,在此設(shè)置之下,可延遲對應(yīng)于服務(wù)請求的服務(wù)任務(wù)的完成。
服務(wù)任務(wù),例如,可以是內(nèi)容提供任務(wù)(例如,搜索引擎、媒體庫、數(shù)字黃皮書、新聞饋送、數(shù)字式詞典或百科全書、數(shù)字地圖、新聞饋送、或它們的任意組合的任務(wù))以根據(jù)內(nèi)容規(guī)格或偏好提供內(nèi)容。應(yīng)用服務(wù)替身112可通過在存儲空間128預(yù)緩存內(nèi)容索引來模擬內(nèi)容提供任務(wù)。應(yīng)用服務(wù)替身112可基于內(nèi)容索引對請求用戶的請求內(nèi)容進(jìn)行定位。當(dāng)?shù)綉?yīng)用服務(wù)服務(wù)器114的(例如,回程網(wǎng)絡(luò)信道110的)斷續(xù)連接性可用時,應(yīng)用服務(wù)替身112可更新內(nèi)容索引。應(yīng)用服務(wù)替身112可將先前請求的內(nèi)容緩存在本地數(shù)據(jù)庫中(例如,存儲空間128中)。在一些實施方式中,應(yīng)用服務(wù)服務(wù)器114向本地數(shù)據(jù)庫(例如,基于與本地網(wǎng)絡(luò)島相關(guān)聯(lián)的用戶配置文件)預(yù)測地推送內(nèi)容。在一些實施方式中,應(yīng)用服務(wù)替身112從核心網(wǎng)絡(luò)108(包括應(yīng)用服務(wù)服務(wù)器114)預(yù)取(即,檢索)潛在被請求的內(nèi)容,以在用戶請求該內(nèi)容之前存儲在本地數(shù)據(jù)庫中??赏ㄟ^基于與本地網(wǎng)絡(luò)島相關(guān)聯(lián)的用戶配置文件預(yù)測潛在被請求的內(nèi)容并且當(dāng)回程網(wǎng)絡(luò)信道110(并且因此,斷續(xù)的連接性)可用時獲取該內(nèi)容,發(fā)生該預(yù)取。應(yīng)用服務(wù)替身112可基于本地數(shù)據(jù)庫中所緩存的信息/內(nèi)容來更新內(nèi)容索引。當(dāng)對所請求的內(nèi)容進(jìn)行定位時,應(yīng)用服務(wù)替身112可首先嘗試根據(jù)內(nèi)容索引從本地數(shù)據(jù)庫定位所請求的內(nèi)容。如果在本地數(shù)據(jù)庫無法獲得所請求的內(nèi)容,則應(yīng)用服務(wù)替身112可識別該內(nèi)容在核心網(wǎng)絡(luò)108中的網(wǎng)絡(luò)位置。如果回程網(wǎng)絡(luò)信道110不可用,應(yīng)用服務(wù)替身112生成獲取請求以存儲在獲取隊列中。當(dāng)應(yīng)用服務(wù)替身112檢測回程網(wǎng)絡(luò)信道110可用時,應(yīng)用服務(wù)替身112開始獲取在獲取隊列中識別的內(nèi)容并將所獲取的內(nèi)容存儲在本地數(shù)據(jù)庫中。在一些實施方式中,一旦獲取內(nèi)容,應(yīng)用服務(wù)替身112將內(nèi)容轉(zhuǎn)發(fā)到請求用戶的終端用戶裝置或者向終端用戶裝置通知該內(nèi)容可從本地數(shù)據(jù)庫檢索。
例如,服務(wù)任務(wù)可以是內(nèi)容路由任務(wù)(例如,針對消息遞送應(yīng)用、布告欄、社交網(wǎng)絡(luò)應(yīng)用、事件管理應(yīng)用、協(xié)作應(yīng)用、或它們的任意組合的任務(wù))以路由用戶到用戶或設(shè)備到設(shè)備的消息。當(dāng)接收內(nèi)容路由請求時,應(yīng)用服務(wù)替身112識別消息的目標(biāo)以及與該目標(biāo)相關(guān)聯(lián)的目標(biāo)配置文件(例如,用戶配置文件、群組配置文件、頁面配置文件、布告欄配置文件)。應(yīng)用服務(wù)替身112可在存儲空間128中保存本地實體的配置文件列表。每一個配置文件可包括唯一標(biāo)識、連接到網(wǎng)絡(luò)島102的頻率、當(dāng)前位置、內(nèi)容偏好、或它們的任意組合。當(dāng)在配置文件列表中發(fā)現(xiàn)目標(biāo)配置文件時,應(yīng)用服務(wù)替身112可立刻將消息遞送至與目標(biāo)配置文件相關(guān)聯(lián)的終端用戶裝置。當(dāng)在配置文件列表中未發(fā)現(xiàn)目標(biāo)配置文件時,應(yīng)用服務(wù)替身112能夠確定回程網(wǎng)絡(luò)信道(例如,回程網(wǎng)絡(luò)信道110)是否可用。當(dāng)可用時,應(yīng)用服務(wù)替身112可將消息發(fā)出到應(yīng)用服務(wù)服務(wù)器114以路由至其目標(biāo)。當(dāng)不可用時,應(yīng)用服務(wù)替身112可將該消息在輸出隊列中進(jìn)行排隊并等到回程網(wǎng)絡(luò)信道可用時將該消息發(fā)送至應(yīng)用服務(wù)服務(wù)器114。
服務(wù)任務(wù)可以例如是內(nèi)容發(fā)布任務(wù)(例如,更新狀態(tài)、發(fā)布博客、發(fā)布本地廣告、通告事件、通告拍賣、通告待售的商品或服務(wù)、或它們的任意組合的任務(wù))以將內(nèi)容推送到共享公共領(lǐng)域。響應(yīng)于接收內(nèi)容發(fā)布請求,應(yīng)用服務(wù)替身112可將待發(fā)布的內(nèi)容存儲到本地數(shù)據(jù)庫中,并將待發(fā)布的內(nèi)容轉(zhuǎn)發(fā)到應(yīng)用服務(wù)服務(wù)器114以供公布(例如,新聞饋送產(chǎn)品)。如果回程網(wǎng)絡(luò)信道110不可用,內(nèi)容被排隊用于當(dāng)回程網(wǎng)絡(luò)信道110再次變得可用時進(jìn)行轉(zhuǎn)發(fā)。在一些實施方式中,應(yīng)用服務(wù)替身112可以在存儲于存儲空間128中的本地版本的發(fā)布平臺(例如,時事通訊、博客、拍賣站點、配置文件頁面、通告頁面、事件站點、維基、或它們的任意組合)中本地預(yù)先發(fā)布該待發(fā)布的內(nèi)容。即使當(dāng)?shù)胶诵木W(wǎng)絡(luò)108的回程網(wǎng)絡(luò)信道110不可用時,本地版本的發(fā)布平臺也可用。當(dāng)回程網(wǎng)絡(luò)信道110變得可用時,應(yīng)用服務(wù)替身112可經(jīng)由應(yīng)用服務(wù)服務(wù)器114使本地版本與全球版本同步。
在一些實施方式中,應(yīng)用服務(wù)替身112可確定并選擇與應(yīng)用服務(wù)服務(wù)器114通信(例如,執(zhí)行同步、發(fā)送消息、轉(zhuǎn)發(fā)任務(wù)請求等)的時間。例如,所選擇的時間可以是基于回程網(wǎng)絡(luò)信道110的實時帶寬有效性、回程網(wǎng)絡(luò)信道110的堵塞等級、與使用回程網(wǎng)絡(luò)信道110相關(guān)聯(lián)的費用、與通信相關(guān)聯(lián)的應(yīng)用需求、或它們的任意組合,所選擇的“最佳時間”。
應(yīng)用服務(wù)替身112進(jìn)而可實現(xiàn)替身api132。響應(yīng)于連接至應(yīng)用服務(wù)替身112的網(wǎng)絡(luò)島102中的終端用戶裝置的服務(wù)請求、來自應(yīng)用服務(wù)服務(wù)器114的針對終端用戶裝置106的處理命令、或它們的任意組合,替身api132可暴露由一個或多個應(yīng)用服務(wù)服務(wù)器提供的服務(wù)功能的至少子集。替身api132也可以與應(yīng)用服務(wù)服務(wù)器114異步通信以發(fā)送服務(wù)請求(例如,進(jìn)一步在應(yīng)用服務(wù)服務(wù)器114處理服務(wù)請求)或接收內(nèi)容或命令。由替身api132提供的這些服務(wù)功能可包括識別終端用戶裝置106的本地集合的配置文件,當(dāng)接收終端用戶請求但回程網(wǎng)絡(luò)信道110不可用時的“存儲和轉(zhuǎn)發(fā)”功能,為終端用戶裝置106的本地集合緩存(例如,來自核心網(wǎng)絡(luò)108中的應(yīng)用服務(wù)服務(wù)器114或其他來源)內(nèi)容,等等。
盡管終端用戶裝置經(jīng)由回程網(wǎng)絡(luò)信道110連接至應(yīng)用服務(wù)服務(wù)器114,應(yīng)用服務(wù)替身112提供機會以向在遙遠(yuǎn)地區(qū)的終端用戶裝置提供連續(xù)的應(yīng)用服務(wù)。應(yīng)用服務(wù)替身112可從回程網(wǎng)絡(luò)信道110的面向終端用戶裝置的一側(cè)的網(wǎng)絡(luò)訪問邊緣供應(yīng)內(nèi)容和服務(wù)。應(yīng)用服務(wù)替身112可通過預(yù)緩存可分發(fā)給終端用戶裝置106的內(nèi)容或者在終端用戶裝置106中遞送消息,提供離線和本地體驗。
圖2是示出了根據(jù)各種實施方式在鄉(xiāng)村聯(lián)網(wǎng)系統(tǒng)200(例如,圖1的鄉(xiāng)村聯(lián)網(wǎng)系統(tǒng)100)的鄉(xiāng)村邊緣201上實現(xiàn)應(yīng)用服務(wù)替身202(例如,圖1的應(yīng)用服務(wù)替身112)的潛在位置的框圖。將鄉(xiāng)村邊緣201經(jīng)由回程網(wǎng)絡(luò)206耦接至核心網(wǎng)絡(luò)204。核心網(wǎng)絡(luò)204包括多個相互連接的計算裝置和計算機服務(wù)器。例如,核心網(wǎng)絡(luò)204可包括應(yīng)用數(shù)據(jù)中心208(例如,圖1的數(shù)據(jù)中心122)和isppop206(圖1的isp邊緣pop118)。
可在鄉(xiāng)村邊緣201中的各種設(shè)備上實現(xiàn)應(yīng)用服務(wù)替身202。越接近于回程網(wǎng)絡(luò)206實現(xiàn)應(yīng)用服務(wù)替身202,越多的用戶可得益于應(yīng)用服務(wù)替身202并且可使用越多的服務(wù)功能。越接近終端用戶裝置實現(xiàn)應(yīng)用服務(wù)替身,服務(wù)請求的響應(yīng)時間越快。例如,可在聚合網(wǎng)絡(luò)212或接入網(wǎng)絡(luò)214中實現(xiàn)應(yīng)用服務(wù)替身202。可通過聚合網(wǎng)絡(luò)設(shè)備216(例如,無線電網(wǎng)絡(luò)控制器(rnc)、基站控制器(bsc)、或微波控制器)建立聚合網(wǎng)絡(luò)212??赏ㄟ^接入網(wǎng)絡(luò)設(shè)備218(例如,3g基站、wi-fi接入點、或路由器)建立接入網(wǎng)絡(luò)214。可由聚合網(wǎng)絡(luò)設(shè)備216或接入網(wǎng)絡(luò)設(shè)備218實現(xiàn)應(yīng)用服務(wù)替身202。替代地,可以在與聚合網(wǎng)絡(luò)設(shè)備216、接入網(wǎng)絡(luò)設(shè)備218、或與回程網(wǎng)絡(luò)206相關(guān)聯(lián)的網(wǎng)絡(luò)設(shè)備進(jìn)行網(wǎng)絡(luò)通信的替身服務(wù)器(例如,圖1的替身服務(wù)器126)中實現(xiàn)應(yīng)用服務(wù)替身202。
在一些實施方式中,可在一個終端用戶裝置(例如,終端用戶裝置222)中實現(xiàn)應(yīng)用服務(wù)替身202。在一些實施方式中,在終端用戶裝置中的每一個上實現(xiàn)應(yīng)用服務(wù)替身202的實例并活躍。在一些實施方式中,在終端用戶裝置中的每一個上實現(xiàn)應(yīng)用服務(wù)替身202的實例,但僅這些實例的子集活躍。例如,與應(yīng)用服務(wù)替身202相關(guān)聯(lián)的應(yīng)用服務(wù)服務(wù)器(例如,圖1的應(yīng)用服務(wù)服務(wù)器114)可選擇終端用戶裝置中的至少一個來承載應(yīng)用服務(wù)替身202的活躍實例。應(yīng)用服務(wù)服務(wù)器可基于終端用戶裝置的能力(例如,網(wǎng)絡(luò)接口和協(xié)議的可用性)、規(guī)格(例如,處理器類型或最大存儲空間)、資源能力(例如,可用電池電力、可用存儲空間、可用帶寬、或可用處理能力)、和/或與其他終端用戶裝置相比的連接性(例如,能夠與一定數(shù)量的其他終端用戶裝置通信),選擇終端用戶裝置。作為另一實例,應(yīng)用服務(wù)替身202的活躍實例可基于其他終端用戶裝置的能力、規(guī)格、資源能力、和/或連接性激活該其他終端用戶裝置中的應(yīng)用服務(wù)替身202的休眠實例。例如,該激活過程可以是將應(yīng)用服務(wù)替身202的角色從一個終端用戶裝置切換到另一終端用戶裝置的過程。這使應(yīng)用服務(wù)替身202的實現(xiàn)能夠是動態(tài)的。在一些實施方式中,可由應(yīng)用服務(wù)服務(wù)器控制這些實例的選擇性激活。在終端用戶裝置中實現(xiàn)應(yīng)用服務(wù)替身202的幾個實施方式中,由應(yīng)用服務(wù)服務(wù)器而不是終端用戶控制并配置應(yīng)用服務(wù)替身202的實例,以保護(hù)由應(yīng)用服務(wù)替身202管理的數(shù)據(jù)的隱私。這可經(jīng)由安全機制(包括例如經(jīng)由密鑰的密碼驗證)實現(xiàn)。
圖3是示出了根據(jù)各種實施方式可以用于實現(xiàn)應(yīng)用服務(wù)替身(例如,圖1的應(yīng)用服務(wù)替身112)的系統(tǒng)環(huán)境的實例的框圖。在幾個實施方式中,在替身服務(wù)器302上實現(xiàn)應(yīng)用服務(wù)替身。替身服務(wù)器302至少斷續(xù)性地連接至一個或多個應(yīng)用服務(wù)服務(wù)器(例如,應(yīng)用服務(wù)服務(wù)器304a和應(yīng)用服務(wù)服務(wù)器304b,統(tǒng)稱“應(yīng)用服務(wù)服務(wù)器304”)。替身服務(wù)器302連續(xù)連接至本地網(wǎng)絡(luò)(其包括一個或多個終端用戶裝置306的動態(tài)集合)。
替身服務(wù)器302可在其操作系統(tǒng)307上運行替身引擎308。替身引擎308使得能夠在替身服務(wù)器302上運行一個或多個替身處理。在一些實施方式中,替身處理中的每一個對應(yīng)于單個應(yīng)用服務(wù)替身,其中,單個應(yīng)用服務(wù)替身對應(yīng)于一不同的應(yīng)用服務(wù)。在一些實施方式中,可在硬件的不同集合上實現(xiàn)替身處理中的每一個。例如,可分別在服務(wù)器刀片(例如,應(yīng)用刀片310a和應(yīng)用刀片310b,統(tǒng)稱為“應(yīng)用服務(wù)器刀片310”)上實現(xiàn)替身處理。應(yīng)用服務(wù)器刀片310中的每一個可具有獨立的處理器、獨立的操作存儲器、獨立的永久性數(shù)據(jù)存儲器、或它們的任意組合。應(yīng)用服務(wù)器刀片310可共享網(wǎng)絡(luò)接口、電源、永久性數(shù)據(jù)存儲器、或它們的任意組合。
在一些實施方式中,替身服務(wù)器302可實現(xiàn)用于計算機虛擬化的管理程序312。管理程序312可實現(xiàn)一個或多個虛擬替身服務(wù)器(例如,虛擬服務(wù)器314a和虛擬服務(wù)器314b,統(tǒng)稱為“虛擬替身服務(wù)器314”)。虛擬替身服務(wù)器314中的每一個可實現(xiàn)單個應(yīng)用服務(wù)替身或者多個應(yīng)用服務(wù)替身。在一些實施方式中,在管理程序312、應(yīng)用服務(wù)器刀片、和/或操作系統(tǒng)307上運行的一個或多個應(yīng)用服務(wù)替身可互相通信并與其網(wǎng)絡(luò)環(huán)境內(nèi)的其他應(yīng)用服務(wù)替身通信。
在一些實施方式中,替身服務(wù)器302可實現(xiàn)替身數(shù)據(jù)庫316。可在操作系統(tǒng)307、一個或多個應(yīng)用服務(wù)器刀片310、或一個或多個虛擬替身服務(wù)器314中實現(xiàn)替身數(shù)據(jù)庫316。替身數(shù)據(jù)庫316可包括緩存內(nèi)容、緩存內(nèi)容的索引、終端用戶裝置306的設(shè)備配置文件、與終端用戶裝置306相關(guān)聯(lián)的用戶配置文件、因斷續(xù)的回程網(wǎng)絡(luò)信道不可用而延遲的到應(yīng)用服務(wù)服務(wù)器304或者其他設(shè)備的消息的消息隊列、或它們的任意組合。
圖4是示出了根據(jù)各種實施方式的應(yīng)用服務(wù)替身的替身應(yīng)用編程接口(api)400的功能框圖。替身api400可以是圖1的替身api132。應(yīng)用服務(wù)替身可以是圖1的應(yīng)用服務(wù)替身112或者圖2的應(yīng)用服務(wù)替身202。替身api400包括應(yīng)用層402、連接層404、路由層406、系統(tǒng)層408、或它們的任意組合。
應(yīng)用層402被配置為將一個或多個消息進(jìn)行排隊以發(fā)送給對應(yīng)于應(yīng)用服務(wù)替身的應(yīng)用服務(wù)服務(wù)器(例如,圖1的應(yīng)用服務(wù)服務(wù)器114)。例如,應(yīng)用層402可使用服務(wù)質(zhì)量(qos)機制實現(xiàn)這一點。qos機制是資源預(yù)留控制機制以便于計算機網(wǎng)絡(luò)消息遞送業(yè)務(wù)。例如,資源預(yù)留控制機制可實現(xiàn)盡可能快(asap)隊列、“過期(expire-after)”隊列、基于優(yōu)先級的隊列、或它們的任意組合。
應(yīng)用層402能夠確定是否可能將來自隊列的消息發(fā)送至應(yīng)用服務(wù)服務(wù)器。當(dāng)可能發(fā)送消息時,應(yīng)用層402可保存和/或調(diào)用客戶端應(yīng)用程序存根。通過用于轉(zhuǎn)換在遠(yuǎn)程過程呼叫(rpc)期間遞送的參數(shù)的可執(zhí)行指令實現(xiàn)客戶端應(yīng)用程序存根。rpc使客戶端計算機(例如,應(yīng)用服務(wù)替身)能夠遠(yuǎn)程調(diào)用服務(wù)器計算機(例如,應(yīng)用服務(wù)服務(wù)器)上的程序(例如,可執(zhí)行對象、函數(shù)或進(jìn)程)。由于客戶端和服務(wù)器計算機使用不同的地址空間,在函數(shù)調(diào)用中使用的參數(shù)被轉(zhuǎn)換??蛻舳藨?yīng)用程序存根性能收斂,使得遠(yuǎn)程服務(wù)器計算機接收rpc作為本地函數(shù)調(diào)用。
連接層404監(jiān)控對于承載應(yīng)用服務(wù)替身的替身服務(wù)器(例如,在圖2中描述的任何設(shè)備中的替身服務(wù)器)可用的一個或多個網(wǎng)絡(luò)接口。連接層404可確定替身服務(wù)器是否連接至一個或多個本地終端用戶裝置(例如,圖1的終端用戶裝置106)和/或替身服務(wù)器是否連接至應(yīng)用服務(wù)服務(wù)器。連接層404可保存所有連接設(shè)備的列表,其包括設(shè)備配置文件(例如,軟件和硬件能力、資源能力、規(guī)格、連接可用性、標(biāo)識、或它們的任意組合)和/或與連接設(shè)備相關(guān)聯(lián)的用戶配置文件(例如,社交網(wǎng)絡(luò)、基于位置的配置文件、網(wǎng)絡(luò)訪問偏好、或它們的任意組合)。
當(dāng)終端用戶裝置連接或斷開時,連接層404可向其他層(例如,應(yīng)用層402或路由層406)中的至少一個層發(fā)送中斷消息(例如,ping消息)。當(dāng)回程網(wǎng)絡(luò)信道斷開(例如,應(yīng)用服務(wù)服務(wù)器變?yōu)閿嚅_)時,連接層404可向其他層中的至少一個層發(fā)送中斷消息。例如,連接層404可向由應(yīng)用層402保存的一個或多個客戶端應(yīng)用程序存根發(fā)送中斷消息。連接層404也可以保存回程網(wǎng)絡(luò)信道何時可用的預(yù)期時間表。在一些實施方式中,連接層404可保存與使用回程網(wǎng)絡(luò)信道相關(guān)聯(lián)的成本圖。例如,這可使路由層406能夠成本優(yōu)化應(yīng)用服務(wù)替身的網(wǎng)絡(luò)使用。連接層404還可以設(shè)置(例如,當(dāng)斷續(xù)連接變?yōu)榭捎脮r)應(yīng)用服務(wù)服務(wù)器的qos隊列的回程qos參數(shù)。連接層404還可以接收客戶端應(yīng)用程序存根(例如,對應(yīng)于由應(yīng)用服務(wù)替身提供的應(yīng)用服務(wù))的消息或內(nèi)容。應(yīng)用服務(wù)服務(wù)器(例如,經(jīng)由圖1的委托api130)可發(fā)送消息或內(nèi)容作為推送消息。
路由層406可便于終端用戶裝置與應(yīng)用服務(wù)服務(wù)器之間的消息或內(nèi)容業(yè)務(wù)。路由層406可使用由連接層404保存的連接信息和配置文件信息以確定如何以及何時路由消息。例如,對于來自應(yīng)用服務(wù)服務(wù)器的傳入消息,路由層406可根據(jù)連接層404確定終端用戶裝置是否連接或是否頻繁連接至與傳入消息針對的用戶配置文件相關(guān)聯(lián)的應(yīng)用服務(wù)替身。作為另一個實例,對于來自終端用戶裝置的傳出消息,路由層406可根據(jù)連接層404確定目標(biāo)設(shè)備的標(biāo)識。如果目標(biāo)設(shè)備是經(jīng)由斷續(xù)網(wǎng)絡(luò)信道連接的應(yīng)用服務(wù)服務(wù)器或另一計算裝置,連接層404可以預(yù)期輸送時間響應(yīng)于路由層406和/或促成將消息放入消息隊列中。如果目標(biāo)設(shè)備是連接至應(yīng)用服務(wù)替身的終端用戶裝置,則連接層404可向路由層406提供促成將消息本地路由至目標(biāo)設(shè)備所需的信息。
系統(tǒng)層408可用qos參數(shù)注冊或注銷客戶端應(yīng)用程序存根。系統(tǒng)層408還可以記錄并存儲系統(tǒng)記錄。例如,系統(tǒng)記錄可包括與每個客戶端應(yīng)用程序存根相關(guān)聯(lián)的qos參數(shù)、發(fā)送到應(yīng)用服務(wù)服務(wù)器或終端用戶裝置/從應(yīng)用服務(wù)服務(wù)器或終端用戶裝置發(fā)送的消息、由替身api400的層執(zhí)行的操作、有關(guān)服務(wù)任務(wù)的錯誤或異常(exception)、和/或它們的任意組合。
在應(yīng)用服務(wù)服務(wù)器和/或替身服務(wù)器(例如,應(yīng)用服務(wù)api124、委托api130、替身api132、或替身api400)中實現(xiàn)的模塊可以實現(xiàn)為硬件組件、軟件部件、或它們的任意組合。例如,所描述的模塊可以是作為在非易失性存儲器上的能夠由圖6中所描述的計算機系統(tǒng)中的處理器或者控制器執(zhí)行的指令的軟件組件。通過由軟件和/或由固件配置或編程的可編程線路可實現(xiàn)上述模塊中引進(jìn)的方法和其他技術(shù),或者通過專用“硬連線”線路可整體實現(xiàn)在上述模塊中引進(jìn)的方法和其他技術(shù),或者通過上述形式的組合可以實現(xiàn)在上述模塊中引進(jìn)的方法和其他技術(shù)。這種專用電路(如果有的話)可以是例如一個或多個專用集成電路(asic)、可編程邏輯設(shè)備(pld)、現(xiàn)場可編程門陣列(fpga)等的形式。
模塊中的每一個模塊都可單獨地,獨立于其他模塊地運作。一些或所有的模塊可被合并成一個模塊。單一模塊還可被分割成子模塊,每個均可執(zhí)行該單一模塊的個別方法步驟或者多個方法步驟。模塊可共享對存儲空間的訪問。一個模塊可訪問被另外一個模塊訪問或變換的數(shù)據(jù)。如果模塊直接或者間接共享物理連接或者虛擬連接,則模塊被視為“耦接”至另一個,從而允許在另一模塊中可訪問從一個模塊訪問或者修改的數(shù)據(jù)。每個“存儲空間”或“數(shù)據(jù)庫”可用數(shù)據(jù)存儲設(shè)備實現(xiàn)并可單獨或獨立于其他數(shù)據(jù)存儲介質(zhì)操作。一些或所有的數(shù)據(jù)存儲介質(zhì)可被合并成一個數(shù)據(jù)存儲介質(zhì)。單個數(shù)據(jù)存儲介質(zhì)還可被分割成子存儲介質(zhì),每個均包含單個數(shù)據(jù)存儲介質(zhì)的一部分。
描述的存儲介質(zhì)或者“存儲”是用于存儲數(shù)字?jǐn)?shù)據(jù)的硬件組件或者硬件組件的部分。每個存儲介質(zhì)均可以是單一物理實體或者分布在多個物理設(shè)備上。每個存儲介質(zhì)均可以位于單獨的物理設(shè)備上或者共享相同的一個或者多個物理設(shè)備。每個存儲介質(zhì)可分配運行時間應(yīng)用程序、進(jìn)程、或模塊的特定存儲空間。
圖5是示出了根據(jù)各種實施方式的作為應(yīng)用服務(wù)替身(例如,圖1的應(yīng)用服務(wù)替身112)操作的計算裝置(例如,圖1的替身服務(wù)器126)的方法500的流程圖。在框502中,計算裝置實現(xiàn)應(yīng)用服務(wù)替身。計算裝置可至少具有經(jīng)由回程網(wǎng)絡(luò)信道對向客戶端應(yīng)用程序提供應(yīng)用服務(wù)的應(yīng)用服務(wù)服務(wù)器(例如,圖1的應(yīng)用服務(wù)服務(wù)器114)的斷續(xù)網(wǎng)絡(luò)訪問。
在框504中,計算裝置可通過保存連接至計算裝置的一個或多個終端用戶裝置的列表建立服務(wù)群組以訪問應(yīng)用服務(wù)。例如,框504可包括計算裝置保存用于終端用戶裝置的設(shè)備配置文件以及與終端用戶裝置相關(guān)聯(lián)的用戶配置文件。
在框506中,計算裝置通過模擬由應(yīng)用服務(wù)提供功能的至少子集,向終端用戶裝置提供本地化應(yīng)用服務(wù)。例如,提供本地化應(yīng)用服務(wù)可包括在替身服務(wù)器至少部分地本地處理來自終端用戶裝置中的至少一個的服務(wù)請求。處理服務(wù)請求可包括調(diào)用客戶端應(yīng)用程序存根,其在以一個終端用戶裝置的名義對于應(yīng)用服務(wù)服務(wù)器的遠(yuǎn)程過程呼叫期間轉(zhuǎn)換參數(shù)。
在一些實施方式中,提供本地化應(yīng)用服務(wù)可包括從服務(wù)群組中的至少第一終端用戶裝置接收服務(wù)請求。服務(wù)請求可涉及服務(wù)群組中的第二終端用戶裝置。提供本地化應(yīng)用服務(wù)可進(jìn)一步包括通過以第一終端用戶裝置的名義將消息遞送至第二終端用戶裝置來至少部分地處理服務(wù)請求??身憫?yīng)于確定回程網(wǎng)絡(luò)信道不可用或應(yīng)用服務(wù)服務(wù)器不可達(dá),遞送消息。處理服務(wù)請求可包括識別由服務(wù)請求指示、在服務(wù)請求中提及或從服務(wù)請求中得出的消息。
在一些實施方式中,提供本地化應(yīng)用服務(wù)可包括從終端用戶裝置中的一個接收對于媒體內(nèi)容的數(shù)據(jù)處理請求(例如,數(shù)據(jù)轉(zhuǎn)換請求)。例如,終端用戶可發(fā)送旨在應(yīng)用服務(wù)的語音命令。語音命令可以包括語音識別和/或翻譯處理任務(wù)。計算裝置可通過使用存儲在替身服務(wù)器中的本地版本的處理模塊使用應(yīng)用服務(wù)替身來轉(zhuǎn)換媒體內(nèi)容。
在一些實施方式中,提供本地化應(yīng)用服務(wù)可包括從終端用戶裝置中的請求裝置中接收包括內(nèi)容標(biāo)識符的內(nèi)容提供請求。計算裝置可經(jīng)由內(nèi)容標(biāo)識符在計算裝置可用的或計算裝置中的本地數(shù)據(jù)庫中對內(nèi)容進(jìn)行定位。當(dāng)計算裝置不能在本地數(shù)據(jù)庫中定位內(nèi)容并且當(dāng)回程網(wǎng)絡(luò)信道不可用時,計算裝置對應(yīng)用服務(wù)服務(wù)器的內(nèi)容的內(nèi)容請求進(jìn)行排隊,以便后續(xù)將內(nèi)容遞送至請求裝置。當(dāng)計算裝置不能在本地數(shù)據(jù)庫中定位內(nèi)容并且當(dāng)回程網(wǎng)絡(luò)信道可用時,計算裝置從應(yīng)用服務(wù)服務(wù)器獲取內(nèi)容以遞送至請求裝置。當(dāng)計算裝置在本地數(shù)據(jù)庫中定位內(nèi)容時,計算裝置將內(nèi)容供應(yīng)至請求裝置。
在一些實施方式中,提供本地化應(yīng)用服務(wù)包括從終端用戶裝置中的請求裝置中接收包括能夠發(fā)布內(nèi)容的內(nèi)容發(fā)布請求。計算裝置然后可通過在將能夠發(fā)布內(nèi)容發(fā)送至應(yīng)用服務(wù)服務(wù)器之前使服務(wù)群組可獲得能夠發(fā)布內(nèi)容而在服務(wù)群組內(nèi)預(yù)先發(fā)布該能夠發(fā)布內(nèi)容。
在框508中,計算裝置可與應(yīng)用服務(wù)服務(wù)器異步地通信該服務(wù)請求以完成該服務(wù)請求。可響應(yīng)于確定回程網(wǎng)絡(luò)信道可用,執(zhí)行框508的邏輯。
在框510中,計算裝置可從應(yīng)用服務(wù)服務(wù)器接收推送消息。推送消息可以是應(yīng)用服務(wù)替身的系統(tǒng)更新。例如,框510可包括從應(yīng)用服務(wù)服務(wù)器接收本地版本的處理模塊的更新。推送消息也可以是旨在服務(wù)群組中的一個終端用戶裝置的消息。
盡管以給定順序提供了過程或者方法,然而,替代實施方式可以不同順序執(zhí)行具有步驟的例程或者采用具有框的系統(tǒng),并且可以刪除、移動、添加、細(xì)分、組合、和/或修改一些過程或者框,以提供可替代的或者子組合??梢愿鞣N不同方式實現(xiàn)這些過程或者框中的每個。此外,盡管有時示出了按順序執(zhí)行的過程或者框,然而,可替代并行執(zhí)行這些過程或者框,或者可在不同的時間執(zhí)行這些過程或者框。
圖6是根據(jù)各種實施方式的計算裝置600的實例的框圖,該計算裝置可以表示本文中描述的一個或多個計算裝置或服務(wù)器。計算裝置600可以是實現(xiàn)圖1的應(yīng)用服務(wù)替身112,圖1的應(yīng)用服務(wù)服務(wù)器114,或者在本公開內(nèi)容中描述的方法和過程(例如,圖5的方法500)的一個或多個計算裝置。計算裝置600包括耦接到互聯(lián)630的一個或多個處理器610和存儲器620。圖6中示出的互聯(lián)630是一抽象概念,其表示任何一個或多個單獨的物理總線,點對點連接,或由適當(dāng)?shù)臉蚪悠鳌⑦m配器或控制器連接的這兩者?;ヂ?lián)630因此可以包括例如系統(tǒng)總線、外圍組件互聯(lián)(pci)總線或pci快捷總線、超傳輸(hypertransport)或者工業(yè)標(biāo)準(zhǔn)架構(gòu)(isa)總線、小型計算機系統(tǒng)接口(scsi)總線、通用串行總線(usb)、iic(i2c)總線、或者“火線”。
處理器610是計算裝置600的中央處理單元(cpu)并且因此控制計算裝置600的整體操作。在某些實施方式中,處理器610通過執(zhí)行存儲在存儲器620內(nèi)的軟件或固件來實現(xiàn)。處理器610可以是或者可包括一個或者多個可編程的通用或者專用微處理器、數(shù)字信號處理器(dsp)、可編程控制器、專用集成電路(asic)、可編程邏輯設(shè)備(pld)、可信平臺模塊(tpm)等、或者這種設(shè)備的組合。
存儲器620是或者包括計算裝置600的主存儲器。存儲器620表示任何形式的隨機存取存儲器(ram)、只讀存儲器(rom)、閃存等或這樣的設(shè)備的組合。在使用中,根據(jù)本文中公開的網(wǎng)狀連接系統(tǒng),存儲器620可以包含含有指令的代碼670。
同樣通過互連630連接至處理器610的是網(wǎng)絡(luò)適配器640和存儲適配器650。網(wǎng)絡(luò)適配器640向計算裝置600提供通過網(wǎng)絡(luò)與遠(yuǎn)程設(shè)備通信的能力,并且可以例如是以太網(wǎng)適配器或者光纖信道適配器。網(wǎng)絡(luò)適配器640還可以為計算裝置600提供與其他計算機通信的能力。存儲適配器650允許計算裝置600訪問永久存儲器,并且例如可以是光纖信道適配器或scsi適配器。
存儲在存儲器620內(nèi)的代碼670可以實施為軟件和/或固件,以對處理器610進(jìn)行編程,以執(zhí)行上述動作。在某些實施方式中,這種軟件或固件可通過計算裝置600(例如,經(jīng)由網(wǎng)絡(luò)適配器640)將其從遠(yuǎn)程系統(tǒng)下載下來最初提供至計算裝置600。
在本文中介紹的技術(shù)例如可以由通過軟件和/或固件或者完全在專用硬連線電路內(nèi)或者在這種形式的組合內(nèi)編程的可編程電路(例如,一個或多個微處理器)實現(xiàn)。專用硬連線電路可以是例如一個或多個專用集成電路(asic)、可編程邏輯設(shè)備(pld)、現(xiàn)場可編程門陣列(fpga)等的形式。
實現(xiàn)本文中引進(jìn)的技術(shù)的軟件或固件可以被存儲在機器可讀存儲介質(zhì)中并且可通過一個或多個通用或?qū)S每删幊绦蛭⑻幚砥鲌?zhí)行。如在本文中使用的術(shù)語“機器可讀存儲介質(zhì)”包括能夠以機器可訪問的形式存儲信息的任何機制(例如,機器可以是計算機、網(wǎng)絡(luò)設(shè)備、蜂窩電話、個人數(shù)字助理(pda)、制造工具、具有一個或多個處理器的任何設(shè)備等)。例如,機器可訪問存儲介質(zhì)包括可記錄/非可記錄介質(zhì)(例如,只讀存儲器(rom);隨機存取存儲器(ram);磁盤存儲器介質(zhì);光存儲介質(zhì);閃存設(shè)備等)等。
此處所使用的術(shù)語“邏輯”例如可包括利用專用軟件和/或固件編程的可編程電路、專用硬連線電路、或者其組合。
社交網(wǎng)絡(luò)系統(tǒng)概述
所公開的應(yīng)用服務(wù)的各種實施方式利用社交網(wǎng)絡(luò)系統(tǒng)或者是社交網(wǎng)絡(luò)系統(tǒng)的一部分。社交網(wǎng)絡(luò)系統(tǒng)通常提供允許用戶與社交網(wǎng)絡(luò)系統(tǒng)環(huán)境內(nèi)或者外的對象或者其他用戶交互的機制。社交網(wǎng)絡(luò)系統(tǒng)用戶可以是個體或者任何其他實體(諸如公司或其他非人實體)。社交網(wǎng)絡(luò)系統(tǒng)可利用基于網(wǎng)絡(luò)的界面或移動界面,該界面包括顯示并且允許用戶與社交網(wǎng)絡(luò)系統(tǒng)對象及信息交互的一系列互連頁面。例如,社交網(wǎng)絡(luò)系統(tǒng)可顯示關(guān)于各個社交網(wǎng)絡(luò)系統(tǒng)用戶的頁面,包括由社交網(wǎng)絡(luò)系統(tǒng)用戶輸入或者與社交網(wǎng)絡(luò)系統(tǒng)用戶有關(guān)的對象和信息(例如,用戶的“配置文件”)。社交網(wǎng)絡(luò)系統(tǒng)還可具有頁面,其包括專用于概念、專用于具有相似興趣的用戶(“團(tuán)體”)的圖片或者視頻、或者包含到到其他用戶或者來自其他用戶的通信或者社交網(wǎng)絡(luò)系統(tǒng)活動。社交網(wǎng)絡(luò)系統(tǒng)頁面可包含到其他社交網(wǎng)絡(luò)系統(tǒng)頁面的鏈接,并且可包括諸如搜索、實時通信、內(nèi)容項上傳、購買、廣告、以及任何其他基于網(wǎng)絡(luò)的推斷機制或者能力的額外功能。應(yīng)注意,可從網(wǎng)絡(luò)瀏覽器或者非網(wǎng)絡(luò)瀏覽器應(yīng)用(例如,在移動計算裝置或者其他計算裝置上執(zhí)行的專用社交網(wǎng)絡(luò)系統(tǒng)應(yīng)用)訪問社交網(wǎng)絡(luò)系統(tǒng)界面。因此,此處所使用的“頁面”可以是網(wǎng)頁、應(yīng)用界面或者顯示、網(wǎng)絡(luò)頁面或者應(yīng)用上顯示的控件、框或者其他圖形界面、另一頁面上的疊加窗口(無論是否在社交網(wǎng)絡(luò)系統(tǒng)環(huán)境內(nèi)還是外)、或者社交網(wǎng)絡(luò)系統(tǒng)外部的具有社交網(wǎng)絡(luò)系統(tǒng)插件或者集成功能的網(wǎng)頁。
如上所述,社交圖譜可包括通過邊線(表示交互、活動性、或者關(guān)系)互連的一組節(jié)點(表示社交網(wǎng)絡(luò)系統(tǒng)對象,也被稱為社交對象)。社交網(wǎng)絡(luò)系統(tǒng)對象可以是社交網(wǎng)絡(luò)系統(tǒng)用戶、非人實體、內(nèi)容項、團(tuán)體、社交網(wǎng)絡(luò)系統(tǒng)頁面、位置、應(yīng)用、主體、概念或者其他社交網(wǎng)絡(luò)系統(tǒng)對象,諸如,電影、品牌、或者書籍。內(nèi)容項可包括社交網(wǎng)絡(luò)系統(tǒng)用戶或者其他對象可創(chuàng)建、上傳、編輯、或者與其交互的事物,諸如,消息、隊列消息(例如,電子郵件)、文本和sms(短消息服務(wù))消息、評論消息、使用任何其他合適的消息技術(shù)發(fā)送的消息、http鏈接、html文件、圖像、視頻、音頻剪輯、文檔、文檔編輯、日歷條目或者事件、以及其他計算機相關(guān)文件。在社交圖譜的背景中,主體和概念包括表示任何個人、地點、事物、或者想法的節(jié)點。
社交網(wǎng)絡(luò)系統(tǒng)可允許用戶在用戶配置文件頁面中輸入與用戶的興趣、教育背景和工作經(jīng)歷、聯(lián)系信息、人口統(tǒng)計信息、以及其他傳記信息有關(guān)的信息,并進(jìn)行顯示。包含于配置文件頁面的各個學(xué)校、雇主、興趣(例如,音樂、書籍、電影、電視秀、游戲、政治觀點、哲學(xué)、信仰、團(tuán)體、或者粉絲頁面)、地理位置、網(wǎng)絡(luò)、或者任何其他信息可由社交圖譜中的節(jié)點表示。社交網(wǎng)絡(luò)系統(tǒng)可允許用戶上傳或者創(chuàng)建圖片、視頻、文檔、歌曲、或者其他內(nèi)容項,并且可允許用戶創(chuàng)建和安排事件。社交圖譜中的節(jié)點可表示內(nèi)容項和事件。
社交網(wǎng)絡(luò)系統(tǒng)可提供各種方式與社交網(wǎng)絡(luò)系統(tǒng)中的非人對象交互。例如,用戶可組成或者加入團(tuán)體、或者成為社交網(wǎng)絡(luò)系統(tǒng)中的粉絲頁面的粉絲。此外,用戶可創(chuàng)建、下載、查看、上傳、鏈接至、加標(biāo)簽于、編輯、或者播放社交網(wǎng)絡(luò)系統(tǒng)對象。用戶可與社交網(wǎng)絡(luò)系統(tǒng)環(huán)境外部的社交網(wǎng)絡(luò)系統(tǒng)對象交互。例如,新聞網(wǎng)站上的文章可能具有用戶可單擊的“點贊”按鈕。在各種實例中,可以通過社交圖譜中將用戶的節(jié)點連接至對象的節(jié)點的邊線表示用戶與對象之間的交互。用戶可使用位置檢測功能(諸如,移動設(shè)備上的gps接收器等)“簽到”到具體位置,并且邊線可將社交圖譜中的用戶的節(jié)點與位置的節(jié)點連接。
社交網(wǎng)絡(luò)系統(tǒng)可為用戶提供各種通信渠道。例如,社交網(wǎng)絡(luò)系統(tǒng)可允許用戶向一個或者多個其他用戶發(fā)送電子郵件、即時消息、或者文本/sms消息;可允許用戶將消息發(fā)布到用戶的留言墻或者配置文件上或者另一用戶的留言墻或者配置文件上;可允許用戶將消息發(fā)布到團(tuán)體或者粉絲頁面上;或者可允許用戶對由用戶或者另一用戶創(chuàng)建或者上傳的圖像、壁紙、或者其他內(nèi)容項做出評論。在至少一個實施方式中,用戶將指示當(dāng)前事件、心理狀態(tài)、想法、感覺、活動、或者任何其他目前相關(guān)通信的狀態(tài)消息發(fā)布到用戶的配置文件上。社交網(wǎng)絡(luò)系統(tǒng)可允許用戶在社交網(wǎng)絡(luò)系統(tǒng)內(nèi)和外通信。例如,第一用戶可在社交網(wǎng)絡(luò)系統(tǒng)中向第二用戶發(fā)送消息、通過社交網(wǎng)絡(luò)系統(tǒng)發(fā)送電子郵件、從社交網(wǎng)絡(luò)系統(tǒng)外部(但源自于社交網(wǎng)絡(luò)系統(tǒng))發(fā)送電子郵件、在社交網(wǎng)絡(luò)系統(tǒng)內(nèi)發(fā)送即時消息、從社交網(wǎng)絡(luò)系統(tǒng)外部(但源自于社交網(wǎng)絡(luò)系統(tǒng))發(fā)送即時消息。此外,第一用戶可對第二用戶的配置文件頁面做出評論、或者對與第二用戶相關(guān)聯(lián)的對象(諸如,由第二用戶上傳的內(nèi)容項)做出評論。
社交網(wǎng)絡(luò)系統(tǒng)允許用戶將其自身與社交網(wǎng)絡(luò)系統(tǒng)中的其他用戶相關(guān)聯(lián)并且建立連接。當(dāng)兩個用戶(例如,社交圖譜節(jié)點)在社交網(wǎng)絡(luò)系統(tǒng)中明確地建立連接時,則其在社交網(wǎng)絡(luò)系統(tǒng)環(huán)境內(nèi)成為“好友”(或者“連接”)。例如,“johndoe”對“janesmith”的好友請求(“janesmith”接受了該好友請求)是社交連接。社交連接是社交網(wǎng)絡(luò)邊線。與未連接用戶可獲得的關(guān)于彼此的信息相比,在社交網(wǎng)絡(luò)系統(tǒng)中成為好友可允許用戶訪問關(guān)于彼此的更多信息。例如,成為好友可允許用戶查看另一用戶的配置文件、看見另一用戶的好友、或者查看另一用戶的圖片。同樣,在社交網(wǎng)絡(luò)系統(tǒng)中成為好友可允許用戶更多地訪問,以通過諸如電子郵件(社交網(wǎng)絡(luò)系統(tǒng)內(nèi)部和外部)、即時消息、文本消息、電話、或者任何其他通信接口與另一用戶通信。成為好友可允許用戶訪問,以查看、評論、下載、支持、或者以其他方式與另一用戶上傳的內(nèi)容項交互??梢杂纱韮蓚€社交網(wǎng)絡(luò)系統(tǒng)用戶的節(jié)點之間的邊線表示建立連接、訪問用戶信息、通信、以及在社交網(wǎng)絡(luò)系統(tǒng)環(huán)境中交互。
除在社交網(wǎng)絡(luò)系統(tǒng)中明確建立連接之外,出于確定在確定交流話題時所使用的社交環(huán)境之目的,具有共同特征的用戶可被視為連接的(諸如,軟連接或者隱式連接)。在至少一個實施方式中,屬于共同網(wǎng)絡(luò)的用戶被視為連接的。例如,就讀共同學(xué)校、就職于共同公司、或者屬于共同社交網(wǎng)絡(luò)系統(tǒng)群體的用戶可被視為連接的。在至少一個實施方式中,具有共同傳記特征的用戶被視為連接的。例如,可以使用用戶出生或者生活的地理區(qū)域、用戶的年齡、用戶的性別、以及用戶的關(guān)系狀況確定用戶是否是連接的。在至少一個實施方式中,具有共同興趣的用戶被視為連接的。例如,可以使用用戶的電影偏好、音樂偏好、政治觀點、宗教觀點、或者任何其他興趣確定用戶是否是連接的。在至少一個實施方式中,在社交網(wǎng)絡(luò)系統(tǒng)內(nèi)采取共同動作的用戶被視為連接的。例如,支持或者推薦共同對象、對共同內(nèi)容項做出評論、或者rsvp到共同事件的用戶可被視為連接的。社交網(wǎng)絡(luò)系統(tǒng)可以利用社交圖譜,確定與特定用戶連接或相似的用戶,以便確定或評估用戶之間的社交環(huán)境。社交網(wǎng)絡(luò)系統(tǒng)可利用這種社交環(huán)境和共同的屬性以便于內(nèi)容分布系統(tǒng)和內(nèi)容緩存系統(tǒng)可預(yù)見地選擇內(nèi)容項,以在與特定社交網(wǎng)絡(luò)賬戶相關(guān)聯(lián)的緩存設(shè)備中進(jìn)行緩存。
本公開的一些實施方式具有除上述所述之外或者替代上述所述的其他的方面、元件、特征、以及步驟。這些潛在的另外和替代的內(nèi)容將在余下的說明中描述。
例如,一些實施方式包括替身服務(wù)器,包括:一個或多個網(wǎng)絡(luò)接口,被配置為連接至一個或多個終端用戶裝置的本地集合并經(jīng)由回程網(wǎng)絡(luò)信道至少斷續(xù)性地連接至提供應(yīng)用服務(wù)的應(yīng)用服務(wù)服務(wù)器;處理器,被配置為承載當(dāng)回程網(wǎng)絡(luò)信道可用時與應(yīng)用服務(wù)服務(wù)器通信的應(yīng)用服務(wù)替身,其中,應(yīng)用服務(wù)替身提供替身應(yīng)用編程接口(api);其中,替身api通過模擬由應(yīng)用服務(wù)提供給終端用戶裝置的功能的至少子集而經(jīng)由應(yīng)用服務(wù)替身提供本地化應(yīng)用服務(wù);以及存儲器,為終端用戶裝置的本地集合緩存內(nèi)容并追蹤終端用戶裝置的配置文件??稍跒榻K端用戶裝置提供網(wǎng)絡(luò)訪問或聚合通信數(shù)據(jù)的網(wǎng)絡(luò)設(shè)備上實現(xiàn)替身服務(wù)器??梢耘c為終端用戶裝置提供網(wǎng)絡(luò)訪問的網(wǎng)絡(luò)設(shè)備單獨實現(xiàn)替身服務(wù)器。可在至少一個終端用戶裝置上實現(xiàn)替身服務(wù)器。
一些實施方式包括存儲用于操作替身服務(wù)器的計算機可執(zhí)行指令的計算機可讀存儲器(例如,非易失性數(shù)據(jù)存儲器)。計算機可讀存儲器可包括用于在替身服務(wù)器中實現(xiàn)應(yīng)用服務(wù)替身的指令,其中,替身服務(wù)器具有經(jīng)由回程網(wǎng)絡(luò)信道對應(yīng)用服務(wù)服務(wù)器至少斷續(xù)的網(wǎng)絡(luò)訪問,其中,應(yīng)用服務(wù)服務(wù)器向客戶端應(yīng)用程序提供應(yīng)用服務(wù);通過保存連接至替身服務(wù)器的一個或多個終端用戶裝置的列表建立服務(wù)群組以訪問應(yīng)用服務(wù)的指令;用于在替身服務(wù)器從服務(wù)群組中的至少第一終端用戶裝置接收服務(wù)請求的指令,其中,服務(wù)請求包括服務(wù)群組中的第二終端用戶裝置;以及通過以第一終端用戶裝置的名義將消息遞送至第二終端用戶裝置來至少部分地處理服務(wù)請求的指令。計算機可讀存儲器可進(jìn)一步包括通過模擬由應(yīng)用服務(wù)提供給終端用戶裝置的功能的至少子集而經(jīng)由替身服務(wù)器提供本地化應(yīng)用服務(wù)的指令。計算機可讀存儲器可進(jìn)一步包括當(dāng)回程網(wǎng)絡(luò)信道可用時將服務(wù)請求異步遞送至應(yīng)用服務(wù)服務(wù)器的指令。計算機可讀存儲器可進(jìn)一步包括:用于調(diào)用在以一個終端用戶裝置的名義對應(yīng)用服務(wù)服務(wù)器的遠(yuǎn)程過程呼叫期間轉(zhuǎn)換參數(shù)的客戶端應(yīng)用程序存根的指令。計算機可讀存儲器可進(jìn)一步包括用于保存終端用戶裝置的設(shè)備配置文件以及與終端用戶裝置相關(guān)聯(lián)的用戶配置文件的指令。