新四季網

在分布式網絡中定位並執行對象的製作方法

2023-04-23 22:26:41

專利名稱:在分布式網絡中定位並執行對象的製作方法
技術領域:
本發明一般涉及與實況對象交互,尤其涉及在分布式網絡中定位並執行對象。
背景技術:
隨著計算技術的發展以及計算設備變得越來越普遍,計算機編程技術可適合用於所使用中的廣泛的各種計算設備。這些計算設備可以在分布式網絡中利用,其中計算機編程和數據是分布(或分散)在不止一個計算設備上的。此外,計算設備可用於通過分布式網絡與其他設備和/或系統交互。作為一種經濟的機制,可利用客戶機/伺服器計算,其中客戶機設備具有第一組能力,而伺服器(或分布式網絡中的其他設備)提供第二組能力。
就此,軟體對象能夠運行分布式協議的實例。軟體對象(或簡稱為「對象」)包括屬性和方法或行為,這些屬性和方法或行為是一組可能的外部交互模式,通過它們,對象的代理能夠參與在本地運行時環境中。常規上,對象被存儲在諸如資料庫等數據存儲中,並且對象的數據或代碼被存儲於在其中編譯該對象的共享庫中。當要利用對象時,本地地(例如,在客戶機設備上)加載並執行對象。然而,有了這樣的常規系統,對象知道並理解遠程過程,這可使得對這些對象的編程變得不僅費時,而且非常面向細節。因此,常規系統無法適當地支持不知道遠程過程的軟體對象。此外,當今不存在允許軟體對象駐留在分布式網絡中以實現對這些對象的分布式支持的系統。當今的計算系統和對象執行系統技術的上述缺點僅旨在提供常規系統的一些問題的概覽,並且不旨在是窮盡性的。傳統系統的其他問題以及此處所描述的各非限制性實施例的對應的益處可以在審閱以下描述後變得更顯而易見。

發明內容
此處提供了簡化的發明內容以幫助能夠對以下更詳細的描述和附圖中的示例性、非限制性實施例的各方面有基本或大體的理解。然而,本發明內容並不旨在作為詳盡的或窮盡的概覽。相反,本發明內容的唯一目的在於,以簡化的形式提出與一些示例性、非限制性實施例相關的一些概念,作為以下各實施例的更詳細的描述的序言。在一個或多個實施例中,提供了供開發者持久存儲對象和讀回(或執行)對象的簡單機制。此外,對象能夠本地地和/或遠程地訪問。例如,所公開的實施例允許在分布式目錄中對對象進行讀寫。由此,對象能夠被遠程地和/或本地地連接和交互。另外,這些方法能夠在網絡或雲中的正在運行的實例上執行。對象實現可以不知道主存環境的細節。此外,對象實現可以不知道遠程過程調用和/或遠程過程調用(RPC)語義。可以有基本上同時存在的同一對象的單個實例或多個實例。此外,無論是正在運行或不是正在運行,每一個對象包括統一資源標識符(URI)路徑,該URI路徑通過分布式對象目錄來命名雲中的對象。這些和其他實施例在下文中更詳細地描述。


參考附圖進一步描述各非限制性實施例,在附圖中圖I示出了根據一方面的示例性計算系統的框圖;圖2是示出根據一方面的包含開發組件、存儲組件和執行組件的對象管理器組件的框圖;圖3示出了根據一方面的對象管理器組件的另一方面;圖4示出了根據一方面的包含監視器組件和卸載組件的對象處理組件;圖5示出了根據一方面的本地綁定過程的非限制性流程圖;
圖6示出了根據一方面的遠程綁定過程的非限制性流程圖;圖7示出了根據一方面的激活過程的非限制性流程圖;圖8是示出根據一方面的與實況對象進行交互的示例性、非限制性過程的流程圖;圖9是示出根據一方面的允許多個設備(或單個設備)與對象的實況版本進行交互的示例性、非限制性過程的流程圖;圖10是示出根據一方面的與實況對象進行交互的示例性、非限制性過程的流程圖;圖11是表示其中可實現在本文中所述的各實施例的示例性、非限制性聯網環境的框圖;以及圖12是表示其中可實現在本文中所述的各實施例的一個或多個方面的示例性非限制性計算系統或操作環境的框圖。
具體實施例概覽存在可被配置成用作遠程對象的各種類型的對象。這些對象包括例如.NET遠程對象,其可包括單調用對象、單元素對象和激活客戶機的對象。單調用對象只服務一個傳入請求並且不保留狀態信息。單元素對象服務多個客戶機並且可通過存儲客戶機調用之間的狀態信息來共享數據。激活客戶機的對象是能夠應客戶機請求被激活的伺服器側對象。如在此處所用的,用戶、終端用戶、客戶機設備、實體等等可以是指人類、行動者、計算機、網際網路、系統(或另一系統)、商業企業、機器、機械等等,並且在後文中將取決於上下文而通常被稱為用戶、客戶機或客戶機設備。常規上,當要利用對象時,用戶通常本地地安裝對象(例如,在客戶機設備上)。因此,對象以對象知道並理解複雜的遠程過程的方式開發或創建。這一遠程過程知曉對象的開發可以是費時的,並且通常利用高度熟練的開發者,這些開發者具備創建具有執行複雜遠程過程的能力的對象的技術技能。對這些高度熟練的開發者的利用增加成本以及對象本身的複雜性。由此,開發能夠如所預期的那樣操作而不知道複雜的遠程調用的對象將會是有益的。此外,開發能夠在分布式網絡中應用的對象將會是有益的,這能夠提高這些對象的可用性。
在一實施例中,所公開的各方面涉及存在於網絡中並且可通過網絡直接訪問的軟體對象。能夠對與對象相關聯的數據進行讀寫,並且可執行對象的方法。這些讀取、寫入和執行能夠在不將對象加載到本地主機的地址空間中的情況下執行。在一些實施例中,各方法能夠在位於分布式連接的網絡中或「雲中」的對象上執行。不像其他形式的遠程方法調用和/或對象激活,所公開的各方面允許開發者在不關心遠程過程調用語義、實現具體接口或甚至在雲中運行和/或主存對象的位置的情況下創建對象。所公開的各方面允許對象按使用相對或絕對統一資源標識符(URI)的路徑位於網絡中。該路徑允許調用者(例如,客戶機設備)遠程地訪問對象並且以統一且一致的方式與對象的屬性(例如,數據)交互或調用對象的方法(例如,代碼)。因此,所公開的各方面允許開發者創建對象並將對象置於網絡中。開發者(或另一用戶)能夠本地地(在客戶機的地址空間中)或遠程地(在伺服器的地址空間中)與對象進行交互。在一個實施例中,一種系統包括對象管理器組件,該組件被配置成基於從客戶機設備接收到的對統一資源標識符(URI)的請求來訪問對象。該URI是相對URI或絕對URI。該系統還包括被配置成遠程地與對象交互的對象處理組件。對象對遠程過程是不可知的。 在一些實現中,對象管理器組件被配置成連接到對象的實況實例。在其他實現中,對象處理組件被配置成接收對象情況的實時反饋。根據一些實現,對象處理組件被配置成間接地與代表對象執行至少一個功能的至少第二對象交互。在一實現中,對象被配置成將其功能的至少一部分卸載到分布式對象。對象處理組件不知道分布式對象的存在。在其他實現中,對象處理組件被配置成匿名地與對象進行交互。在一些實現中,該系統還包括抽象層,該抽象層被配置成代表對象與客戶機設備通信並且代表客戶機設備與對象通信。在另一實施例中,一種方法包括將對象寫入到web服務並且將該對象保存在與該web服務相關聯的資料庫中。該方法還包括基於接收到針對統一資源標識符(URI)的請求來執行對象。在一實現中,保存對象包括將URI分配給對象,其中該URI是通用的。在一些實現中,執行基於來自第一設備的請求。在該實現中,該方法還包括查明第一設備已經與對象連接並且保存該對象的第一版本。該方法還包括從第一設備和第二設備接收請求並且根據第二請求來執行對象的第一版本。在另一實現中,該方法包括處理對對象的至少一個改變。該請求和至少一個改變是從第一設備接收到的。該方法還包括自動將至少一個改變保存在與web服務相關聯的資料庫中。在另一實現中,該方法包括從第二設備接收第二請求並且向第二設備呈現具有至少一個改變的對象。在一些實現中,執行包括與至少第二對象進行交互,其中該第二對象與該對象相關聯。在另一實施例中,一種用於對象的分布式執行的方法包括接收對對象的調用。對象包括第一子對象和第二子對象。該方法還包括根據該調用來執行對象、第一子對象和第二子對象中的至少一個,其中該執行是在雲中進行的。在一實現中,該執行包括在執行期間移動對象的至少一部分。在另一實現中,該執行包括在第一機器中執行第一子對象以及在第二機器中執行第二子對象。在另一實現中,該執行包括將對象的至少一個功能卸載到第一子對象或第二子對象。在一些實現中,該方法包括監視對於對象、第一子對象和第二子對象的使用,並基於監視,卸載對象、第一子對象和第二子對象中的至少一個的功能。此處,以上已經呈現了對象執行系統的實施例中的某一些的概覽。作為接下來的內容的路標,更詳細地描述對象執行系統的各示例性、非限制性實施例和特徵。隨後,為了附加說明,給出一些非限制性實現和示例,之後是其中可實現這些實施例和/或特徵的代 表性網絡和計算環境。在分布式網絡中定位並執行對象作為針對從統一資源標識符(URI)提供對實況對象的訪問以及提供對象的分布式執行的一種或多種非限制性方式的進一步描述,圖I大致示出了示例性計算系統的框圖。計算系統包括環境100,該環境可以是分布式網絡或分布式目錄。在某些方面,環境100與雲計算(或簡稱為「雲」)相關聯,其中終端用戶(例如,客戶機設備)不知道傳遞服務的系統、分布式對象等的物理位置和配置。在一示例中,位於雲中的抽象層能夠從客戶機設備接收指令。基於這些指令,抽象層能夠代表客戶機設備與一個或多個對象交互。此外,抽象層能夠代表對象與客戶機設備交互。由此,抽象層能夠對客戶機設備隱藏實現細節。當用戶需要可位於環境100中的服務或分布式對象時,接收對象請求110。例如,每一分布式對象都可具有相對URI或絕對URI。例如,第一分布式對象可具有第一 URI,第二分布式對象可具有第二 URI,以此類推。根據一方面,URI可以在創建對象時被分配給對象並被保留在分布式對象目錄中。根據一些方面,對象請求包括對URI的引用。由此,當用戶期望訪問分布式對象時,用戶輸入該對象的URI。根據一些方面,能夠從單個用戶或從不同用戶接收多個對象請求。多個對象請求可以是針對不同對象的,由此這些多個對象請求可引用不同的URI。根據一方面,該系統被配置成諸如通過抽象層來執行多個對象請求。此外,對象的單個實例或多個實例能夠基本上同時存在。在某些方面,分配給對象的URI可以是匿名的,以使得不存在與對象相關聯的安全特徵(例如,口令、安全憑證等)。由此,可訪問網絡且知道URI的任何客戶機都能夠訪問對象並且利用與該對象相關聯的特徵。根據一些方面,可以為對象建立安全特徵。在這種情況下,用戶嘗試通過輸入URI來訪問對象,並且另外輸入各種憑證(例如,用戶id/ 口令對、生物測定數據或其他安全參數)。如果憑證與分配給對象的憑證匹配,則用戶被授權並且被授予對對象的訪問。如果憑證不匹配,則拒絕對對象的訪問。基於對象請求110(例如,URI以及在某些情況下的安全參數的輸入),對象管理器組件120被配置以訪問對象。根據某些方面,對象管理器組件120訪問對象數據130。例如,對象管理器組件120能夠從對象伺服器獲取對象數據130。根據某些方面,對象管理器組件120不知道對象的實際位置。例如,對象可位於與分布式網絡對接的不同設備(或不同雲)上。在一方面,對象管理器組件120被配置成連接到對象(或另一對象或與該對象相關聯的子對象)的實況實例。對象數據130被提供給被配置成遠程地與對象進行交互的對象處理組件140。例如,對象處理組件140可被配置成執行關於位於環境100中的對象的方法。此外,對象處理組件140可被配置成允許遠程地(在雲中或在分布式對象目錄(對象名字空間))或本地地(在客戶機設備上)利用對象。如果遠程地利用對象,則(例如,實時地,在與做出改變大致同時,等等)自動將對該對象的任何改變保存在雲中。在某些方面,對象處理組件被配置成匿名地與對象進行交互。如果本地地利用對象,則基於其他準則來手動地(例如,通過用戶)或自動地將對該對象的任何改變保存到雲。例如,如果用戶本地地與對象交互,則抽象層可請求在滿足特定準則後(例如,在指定的時間間隔後,在對對象的改變的通知後,等等)將對象保存到雲。將對象手動和/或自動保存到雲允許用戶(或不同的用戶)在請求與該對象相關聯的URI時(在稍後時間)訪問該對象的已更新版本。所公開的各方面的優點是能夠在沒有特殊編程考慮事項的情況下提供對象。由此,對象能夠存活在網絡中並且能夠利用雲計算。此外,對象的已更新版本(或最近版本)可由不同的用戶/客戶機設備、相同的用戶/相同的客戶機設備或相同的用戶/不同的客戶機設備訪問。例如,用戶可能在工作計算機處與對象交互。如果用戶遠程地與對象交互,則該對象可被自動保存在雲中。如果用戶本地地與對象交互,則該用戶可以在這天下班之前將該對象保存到雲。在晚上,用戶可決定再次訪問對象。由於對象的實況版本已被保存
在雲中(例如,自動、手動),因此用戶能夠從不同的設備(例如,家庭計算機)或相同的設備(例如,在工作和家裡兩者處使用的膝上型計算機)訪問該對象。在一實施例中,圖I所示的對象執行系統在操作上可不同於常規的對象執行系統,以便提供勝於可由採用常規的對象執行系統的計算系統實現的優勢的額外優勢。例如,此處所公開的對象執行系統能夠在分布式網絡或雲中本地地和/或遠程地應用。為了示出其他方面,圖2是示出根據一方面的包含開發組件210、存儲組件220和執行組件230的對象管理器組件200的框圖。對象管理器組件200被配置成創建對象並將URI分配給對象。在一個實施例中,開發組件210被配置成將對象寫入到web服務。例如,開發者可利用普通編程來定義對象「foo」(例如,開發者不知道該對象將被在雲中使用)。在定義對象「foo」之後,開發者可通過調用web服務並執行「寫」過程來發布該對象,該「寫」過程被配置成將對象寫入到web服務。存儲組件220被配置成將對象保留或保存在與web服務相關聯的資料庫中。繼續上述示例,在與將對象寫入到web服務大致相同的時間,將路徑分配給對象。例如,路徑可包括對象的名稱,諸如「Fred」。由此,「foo」是實際對象實例且對象名稱是「Fred」。對象名稱允許對象作為已命名的對象存在於雲中。例如,開發者可能本地地創建對象,然而,一旦該對象被保存至web服務,則該對象在雲中並且能夠被保留在例如資料庫中。在一方面,保存對象包括將URI分配給對象,其中URI是通用的(例如,可由不止一個用戶利用,可以在多個位置利用,等等)。在某些方面,URI可使得對象的單個實例或多個實例能夠基本上同時存在。執行對象230被配置成基於接收到針對URI的請求來執行(例如,運行)對象。例如,當將要執行對象「Fred」時,接收請求並且在相同的URI執行對象。由此,開發者能夠在沒有複雜的遠程過程並且在不關心系統的基礎結構的情況下創建對象。圖3示出了根據一方面的對象管理器組件300的另一方面。對象管理器組件300可包括開發組件310和存儲組件320,該開發組件被配置成創建對象,存儲組件被配置成將對象保留在雲中。對象對遠程過程可以是不可知的。對象管理器組件300還包括執行組件330,該執行組件被配置成根據對URI的請求來選擇性地授予對對象的訪問。該URI可以是相對URI或絕對URI。在一方面,執行組件330被配置成選擇性地將對對象的訪問授予一個或多個用戶和/或一個或多個客戶機設備。例如,用戶正在工作時利用對象。稍後在晚上,用戶想要使用不同的客戶機設備來在家裡與對象交互。執行組件330被配置成選擇性地授予用戶對對象的訪問,儘管客戶機設備是不同。在另一方面,不同的用戶(以及不同的客戶機設備)可被提供對雲中的對象的訪問。為了方便這些訪問,執行組件330可被配置成基於來自第一設備的請求來執行對象。狀態組件340被配置成查明第一設備是仍然連接到對象還是已經與對象斷開連接。該判定可基於客戶機上的活動會話或基於其他準則(例如,超時狀態,其中如果在指定時間內沒有接收到輸入,則客戶機設備自動超時並且對對象的訪問被斷開連接)來做出。如果第一設備仍然連接到對象,則拒絕另一設備對對象的訪問。或者,可以向該另一設備提供該對象的多個實例中的一個。如果確定客戶機不再連接到對象,則存儲組件320被配置成保留該對象的修改後版本(例如,第一版本)。在某些方面,存儲組件320可被配置成保留對象的原始版本和/ 或對象的後續(例如,修改後)版本。在某些方面,對象的已保存版本可以是對象的多個實例中的一個實例。對象管理器組件300可以從第一設備或從第二設備接收第二請求。基於該第二請求,執行組件330被配置成執行對象的修改後版本(例如,對象的後續版本)。圖4示出了根據一方面的包含監視器組件410和卸載組件420的對象處理組件400。對象處理組件400被配置成遠程地與對象交互。在一方面,對象處理組件400通過抽象層間接地與對象交互。在某些實現,對象處理組件400被配置成間接地與代表對象執行至少一個功能的至少第二對象交互。對象對遠程過程是不可知的。監視器組件410被配置成接收對象的情況的實時反饋。例如,對象能夠在客戶機設備上本地地執行並且被保存到雲,以使得該對象能夠在不同的客戶機設備(或在另一時間在相同的客戶機設備上)使用。如果對象未被保存到雲,則該對象的最近版本將不會通過URI可用。然而,如果在z 中執彳丁對象,則將該對象的最近版本自動保留在z 中。由此,如果在雲中執行對象(或者當對象的本地副本被保存到雲時),則監視器組件410 (在遠程執行的情況下)被配置成獲取實時反饋或(在本地執行的情況下)已更新反饋。卸載組件420被配置成間接地與代表對象執行至少一個功能的至少第二對象(例如,子對象)進行交互。由於對象在分布式網絡中,因此該對象的確切位置可能不是已知的。此外,對象可具有可位於分布式網絡(例如,雲、網際網路等)中的不同位置的子對象或多個部分。例如,可執行一實況對象,該實況對象可連接到一個或多個其他正在執行的對象、子對象、多個部分、分量,等等(例如,分布式部分)。分布式部分(以及對象)的每一部分都可位於不同的系統,這能夠提供互操作性。此外,在雲中,對象能夠在第一機器(或第一雲)中執行,並且分布式部分的至少一部分能夠在第二機器中(或在第二雲中)執行。根據一方面,如果(例如,由於處理約束)一機器或雲不具有執行方法的能力,則即使對象處理組件400不知道分布式對象的存在,對象也可被配置成將其功能的至少一部分卸載到分布式對象。因此,即使對象在最初創建時沒有該能力,功能的至少一部分也在不同的機器或雲(例如,分布式部分)上執行。客戶機設備不知道卸載或分布式部分。此外,所公開的各方面提供單個對象的分布式執行。由此,如果過渡使用對象,則該對象可以快速分散到不同的機器或雲。另外,可提供能夠預測是否應卸載對象的功能的分析。以下示例示出了如何將對象置於網絡中。該示例使用具有差別的典型的購物車場景,該購物車不是網站專用應用代碼,而是獨立於網站存在的「雲對象」。注意,任何對象(諸如.NET對象)都可以與所公開的方面一起使用,無論該對象是否理解遠程過程調用,這是所公開的各方面的優點。用戶通過網站訪問「雲中」的購物車,並因此能夠從web上的任何地方而不僅僅是當個網站訪問相同的購物車。在一方面,用戶可輸入URI並使用該URI來訪問購物車。例如,用戶虛擬地拜訪基於web的書店併購買一本書且將這本書放在個人購物車中。然後,用戶去往基於web的電子商店,並且購買視頻遊戲且將該視頻遊戲添加到相同的 個人購物車。接著,用戶拜訪基於web的住房改善商店,並且購買割草機,該割草機也被放在個人購物車中。該購物車是「雲」對象並且屬於用戶,而不是商家本身。由此,用戶可離開一個網站並且在不丟失購物車物品的情況下從不同的計算機或設備訪問另一網站。當用戶期望結帳(例如,購買物品)時,交易被發送到適當的商家以完成交易並獨立地遞送商品。可以理解,上述示例是假想的,並且對於與每一個結帳過程(例如,商家)交互的邏輯問題將根據與每一個結帳過程相關聯的不同實體來在個別地啟用。所公開的各方面允許在「雲中」實現個人購物車,常規系統未解決該實現。此外,儘管所公開的各方面是針對分布式購物場景來討論的,但所公開的各方面能夠用於除了此處所討論的場景之外的其他場景。以下是所公開的各方面的示例,其中對象不被遠程地執行,而是被下載到做出調用的機器(例如,客戶機設備)並且本地地執行。這是為了將其與此處描述的遠程執行方面進行對比而示出了。
ObjectNamespace directory = ObjectNameSpace.Co eci; ShoppingCartshoppingCart = newShoppingCart ;
Directory.
「/provider/customer//MySoftwareBasket」,
shoppingCart
);上述示例本地地(在客戶機設備上)創建購物車,並將其寫入用戶的個人目錄下的對象名字空間。在該示例中,客戶由客戶ID來命名。購物車對象被存儲且具有名稱「MySoftwareBasket (我的軟體購物籃)」,以暗示該客戶機正在線構造買軟體。該示例基本上是在寫入數據。注意,在網絡中存在購物車,應用可通過調用作為「Bind (綁定)」和「Activate (激活)」的兩個目錄方法中的一個來訪問該購物車。Bind連接到對象的現有實例並且能夠以作為本地(生成本地副本)或遠程(連接到遠程副本)的兩種方式中的一種來執行。Activate用於創建新遠程實例並將其加載到網絡中。Activate將對象加載到雲中的遠程過程中。使用本地選項來綁定到目錄中的對象導致該對象的數據被複製到本地機器並且創建本地實例。對對象的任何調用都是(例如,在過程中)本地執行的。在該場景中,對象將被保存回到名字空間中以使得改變起作用。圖5示出了根據一方面的本地綁定過程的非限制性流程圖。客戶機設備500將綁定請求510發送到名字空間伺服器520。名字空間伺服器520用綁定響應530來回復,該綁定響應可包括名字記錄。客戶機設備500將讀取請求540發送到對象伺服器550,該讀取請求可包括對象id。對象伺服器550與數據源560交互以獲取對象數據570,該對象數據被加載在對象伺服器550上。對象伺服器550將對象圖580提供給客戶機設備500。以下示例示出了這如何能夠看上去是程序性的。在其對象使用Bind方法下載之後,這全都發生在客戶機設備上。
ShoppingCart shoppingCart = directory「/provider/customer//MySoftwareBasket」,BindOptions.Locally);
shopingCart.Add(product);
directory.Write (shoppingCart);以下示例類似於上述示例,不同之處在於綁定選項指定遠程綁定。在該示例中,真實對象未被下載到客戶機,而是在客戶機上創建代理。圖6示出了根據一方面的遠程綁定過程的非限制性流程圖。客戶機設備600將綁定請求610發送到名字空間伺服器620,名字空間伺服器用可包括名字空間記錄的綁定響應630來回復。客戶機設備600將包括圖ID (或對象id)的綁定請求640發送到對象伺服器650。對象伺服器650連接660到對象主存進程670。客戶機設備600通過對象主存進程670對對象做出遠程調用680。對Add (添加)的調用是遠程執行的,而對Write (寫入)的調用指示遠程進程執
行對象的到資料庫的寫入。
ShoppingCart shoppingCart = directory .5ιη</ ( 「/provider/customers//MySoftwareBasket」,
BindOptions.Remotely
);
Product product = new Product (「Program Name」); shoppingCart. Add (product);
directory .Write (shoppingCart);對象能夠在一個調用中被激活和綁定。在該場景中,創建新實例並且返回代理。圖7示出了根據一方面的激活過程的非限制性流程圖。示出了將綁定請求710傳送到名字空間伺服器720的客戶機設備700。名字空間伺服器720用包括名字空間記錄的綁定響應730來回復。包括對象id的激活請求740被從客戶機設備700發送到對象伺服器750。對象伺服器750訪問數據源760並且數據被加載770到對象伺服器750。對象伺服器750將對象實例780加載到對象主存進程790中。客戶機設備700對對象795做出遠程調用。以下代碼示出了這如何能夠看上去是程序性的。
權利要求
1.一種系統,包括 對象管理器組件(120),被配置成基於從客戶機設備接收到的對統一資源標識符URI的請求來訪問對象;以及 對象處理組件(140),被配置成遠程地與所述對象交互。
2.如權利要求I所述的系統,其特徵在於,所述對象對於遠程過程是不可知的。
3.如權利要求I所述的系統,其特徵在於,所述對象管理器組件(120)被配置成連接到所述對象的實況實例。
4.如權利要求I所述的系統,其特徵在於,所述對象處理組件(140)被配置成接收所述對象的情況的實時反饋。
5.如權利要求I所述的系統,其特徵在於,所述對象處理組件(140)被配置成間接地與代表所述對象執行至少一個功能的至少第二對象交互。
6.如權利要求I所述的系統,其特徵在於,所述對象被配置成將其功能的至少一部分卸載到分布式對象,其中所述對象處理組件(140)不知道所述分布式對象的存在。
7.如權利要求I所述的系統,其特徵在於,所述對象處理組件(140)被配置成匿名地與所述對象進行交互。
8.如權利要求I所述的系統,其特徵在於,所述URI是相對URI或絕對URI。
9.如權利要求I所述的系統,其特徵在於,還包括抽象層,所述抽象層被配置成代表所述對象與所述客戶機設備通信,並且代表所述客戶機設備與所述對象通信。
10.一種方法,包括 將對象寫入(800)到web服務; 將所述對象保存(810)在與所述web服務相關聯的資料庫中; 基於接收到針對統一資源標識符URI的請求來執行(820)所述對象。
11.如權利要求10所述的方法,其特徵在於,保存所述對象包括將所述URI分配給所述對象,其中所述URI是通用的。
12.如權利要求10所述的方法,其特徵在於,所述執行是基於來自第一設備的請求的,所述方法還包括 查明所述第一設備已經與所述對象斷開連接; 保存所述對象的第一版本; 從所述第一設備或第二設備接收第二請求;以及 根據所述第二請求來執行所述對象的第一版本。
13.如權利要求10所述的方法,其特徵在於,還包括 處理對所述對象的至少一個改變,其中所述請求和所述至少一個改變是從第一設備接收到的;以及 自動將所述至少一個改變保存在與所述web服務相關聯的資料庫中。
14.如權利要求13所述的方法,其特徵在於,還包括 從第二設備接收第二請求;以及 向所述第二設備呈現具有所述至少一個改變的對象。
15.如權利要求10所述的方法,其特徵在於,所述執行包括與至少第二對象交互,其中所述第二對象與所述對象相關聯。
全文摘要
本發明公開了在分布式網絡中定位並執行對象。本發明涉及分布式網絡中或雲中的對象的交互和執行。每一個對象包括統一資源標識符(URI)路徑,該URI路徑通過分布式對象目錄來命名雲中的對象。客戶機設備能夠基於URI路徑來直接與對象的實況實例對接。對象對於遠程過程調用語義可以是不可知的。在某些方面,對象能夠被遠程地或本地地連接和交互。此外,對象的單個實例或多個實例能夠基本上同時存在。
文檔編號H04L29/08GK102843411SQ20121008667
公開日2012年12月26日 申請日期2012年3月28日 優先權日2011年3月29日
發明者R·帕奇, L·齊格努什, R·喬漢 申請人:微軟公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀