XML 如何推動下一代資訊共享應用程式

2021-03-31 18:12:34 字數 3215 閱讀 1232

xml 在對等資訊共享方案(包括網格計算(grid ***puting)、即時訊息傳遞和 web 服務)中是乙個關鍵要素。本文**了在適應現有 xml 技術的基礎上為建立統一的 p2p 構造而進行的最前沿的工作。

將一台聯網裝置中的資訊直接共享給另一台裝置根本不是乙個新想法。畢竟,象 laplink 這樣的遠端訪問軟體,已經問世了近 20 年,可以從遠端計算機移動檔案和資料夾,傳送應用程式設定和目錄以及更新已在另一台 pc 上儲存的檔案。

然而,當今的對等通訊需要另外乙個高階的層次。象 laplink 這樣的程式主要是設計用來把檔案級資訊從一台 pc 推到另一台,而 p2p 平台的目標則更進一步:共享資料並鏈結可能不相容的應用程式。

推動 p2p 通訊的引擎由 xml 通訊驅動。事實上,所有新興的 p2p 平台都依靠 xml 使資料變得可消化的,這是使用者可能在台式電腦、可攜式計算機、pda、pocket pc 或甚至伺服器上工作的世界中必需的乙個步驟。而且 xml 通訊和協議構建在許多推薦標準中,在 p2p 開發社群中,正在迅速接受這些標準。

下面,我們將提供一些 xml 如何使下一代資訊共享應用程式成為可能的示例。我們還將提供一些特定於應用程式的樣本**,並清楚地說明這些**是如何支援核心 p2p 功能的。

專案 jxta為 p2p 開發人員世界定義標準的主要工作之一,「專案 juxtapose」(通常稱作 jxta),是基於 xml 訊息傳遞。在開始這一由 sun microsystems 資助的專案時,工程師們分析了現有的 p2p 應用程式以確定這些平台有哪些公共元素。然後,他們籌畫了一套協議,設計成提供乙個可以在其上構建服務和應用程式的層。jxta 設計師想使這些層又薄又小,成為一種與 tcp/ip 類似的不顯眼的鏈結技術。這裡是一些如何實現這一目的的示例。

jxta 的核心概念之一是廣告思想,命名、描述和發布 p2p 資源的存在的一種 xml 結構化的文件。資源可以是乙個對等點、乙個對等點組或乙個服務。jxta 規範包含一套基本的廣告,每個廣告都可以分解成使用 xml 模式的多個子型別。

通過這樣的廣告進行通訊的裝置不必具有靠自己進行語法分析和建立 xml 文件的能力;希望在 jxta 網路中包含低功率裝置(如手機)的開發人員可以用乙個有限系列的標準 xml 訊息對裝置進行預程式設計。

清單 1 是乙個 pipeadvertisement,它描述了乙個管道。在 jxta 環境中,管道是用於傳送和接收訊息的通訊通道。非同步地處理訊息。因為管道是單向的,所以有輸入管道和輸出管道。

清單 1. pipeadvertisement

<?xml version="1.0" encoding="utf-8"?>

name of the pipe

pipe id

pipe type

下乙個示例是乙個對等點組廣告。在 jxta 中,對等點組是提供一套公共環境的協作對等點的集合。這個組懂得使用這組指定的組協議。

清單 2. 對等點組廣告

xml 定義的其它關鍵 jxta 實體包括對等點,即可以表示另乙個對等點所需協議的任何實體;設計成資料報的訊息,包含乙個信封和帶主體的協議頭堆疊;以及使用稱為 uuid 的 128 位資料的標識來引用諸如對等點、廣告或服務等實體。

globus 專案

定義 p2p 通訊的另乙個嘗試來自 globus 專案,這是乙個組織,致力於通過共享標準使得全球範圍內的計算網格成為可能。

「網格計算」的定義有一些不同,因為這一技術仍是新興的。根據 globus 的定義,網格是「使軟體應用程式能夠整合由遍布各地的各種不同組織管理的工具、顯示器、計算和資訊資源的持久環境」。換而言之,網格是可以把資訊和程序作為乙個單個實體共享的計算機和軟體的任何全異集合。

在希望關注概念的同時,一些公司正開始傾向於新興的標準主體。各種主要計算機行業廠商,包括 ibm、***paq、cray、sgi、sun、fujitsu、hitachi、nec 和 microsoft,都支援 globus 標準。platform ***puting,一家網格計算公司,已經發行了 globus toolkit,platform globus 的乙個商業版本。

globus 的開放式網格服務體系結構(open grid services architecture,ogsa)是嘗試定義 web 服務在計算網格中應該如何起作用的方案。這個體系結構使用一套逐步流行的基於 xml 的協議,象 w3c 這樣的實體都支援這些協議。這些協議包括 web 服務描述語言(web services description language,wsdl)、soap 和 ws-inspection,ws-inspection 是一種用於定位由服務**商發布的服務描述的一種 xml 語言。

web 服務描述語言(wsdl)對 globus 實現尤為重要,它為 xml 文件定義了乙個模式,用於把 web 服務描述為對訊息進行操作的端點。訊息可以包含面向文件的有效負載或 rpc 有效負載。wsdl 允許以多種訊息格式和網路協議描述端點及表示它們的訊息。還定義了 wsdl 與 soap 1.1、http get/post 和 mime 一起使用的繫結約定。

wsdl 是 ogsa 框架的核心。ogsa 將服務之間的連線定義為網格服務介面,它們在 wsdl 中稱為 porttype。在網格服務的 servicetype 中指定了網格服務支援的一組 porttypes。ogsa 將 servicetype 定義為乙個 wsdl 可擴充套件性元素。

下面是 servicetype 的乙個 wsdl 文件示例:

清單 3. servicetype 的 wsdl 文件

ws-license 描述如何將公共許可證格式(例如,x.509 和 kerberos 票券)用作 ws-security 憑證。同時,ws-routing 是無狀態的 soap 擴充套件,用來通過傳輸(例如,tcp、udp 和 http)非同步傳送 soap 訊息。ws-referral 是 soap 擴充套件,它能夠動態配置訊息路徑上的 soap 節點之間的路由。

XR,下一代搜尋

我們未來會陸續推出一系列文章,而本篇則是開宗明義的第一章,希望能藉此機會和更多開發者互相交流對搜尋 xr的理解,以及對其未來發展的看法 xr,下一代網際網路 我們認為,xr是下一代網際網路的核心要素,也是手機之後的下一代終端裝置,原因有以下兩點 首先,ar vr更符合人類的認知方式,因為我們每個人都...

XR,下一代搜尋

我們未來會陸續推出一系列文章,而本篇則是開宗明義的第一章,希望能藉此機會和更多開發者互相交流對搜尋 xr的理解,以及對其未來發展的看法 xr,下一代網際網路 我們認為,xr是下一代網際網路的核心要素,也是手機之後的下一代終端裝置,原因有以下兩點 首先,ar vr更符合人類的認知方式,因為我們每個人都...

該如何教育我們的下一代

以前我們常常開玩笑說 一人吃飽全家不餓 可一旦你公升級成爸媽了,你的身上自然就多了乙份責任,你就不得不思考一些以前壓根不當回事的問題,比如 該如何教育我的孩子。就在17年9月28號下午3 55,當醫生叫寶寶交到我手上時,我內心激動萬分,看著寶寶的那一刻我。我心裡生出了乙個思想 以後的一切都是為寶寶而...