專利名稱:基于匿名主題尋址的方法和設(shè)備的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及網(wǎng)絡(luò)通訊,更具體地,本發(fā)明涉及從遠程計算機訪問目錄的 客戶計算機。
背景技術(shù):
萬維網(wǎng)及其永遠發(fā)展的流行性和接受性已經(jīng)發(fā)展了一種標準的信息尋 址的方式。通常地,網(wǎng)絡(luò)瀏覽器向主服務(wù)器發(fā)送文件請求,接著主服務(wù)器向 用戶返回文件。
使用互聯(lián)網(wǎng)的下劃線結(jié)構(gòu)(underlying architecture)能完成這一過程,而下 劃線結(jié)構(gòu)是基于超文本傳輸協(xié)議(HTTP)或超文本傳輸協(xié)議安全(HTTPS)、傳 輸控制協(xié)議(TCP)和網(wǎng)際協(xié)議(IP)。根據(jù)這一系列協(xié)議,網(wǎng)絡(luò)服務(wù)器的服務(wù)器 程序"接聽"在客戶計算機上執(zhí)行的用于連接的客戶程序(客戶網(wǎng)絡(luò)瀏覽器)。 客戶瀏覽器通過統(tǒng)一資源語言(URL)與服務(wù)器連接。 一個URL包括協(xié)議說明 (例如HTTP, FTP)、主機接收站和文件說明。主機接收站是一個有效的點到 點通訊的地址。
這種通常的互聯(lián)網(wǎng)通訊方式示于圖1。特別是,圖1中示出了現(xiàn)有技術(shù) 中瀏覽器、網(wǎng)絡(luò)服務(wù)器和應(yīng)用程序服務(wù)器的系統(tǒng)圖。圖1中包括網(wǎng)絡(luò)瀏覽器 11、互聯(lián)網(wǎng)13、服務(wù)器15、服務(wù)器15.1-15.5、數(shù)據(jù)庫19和目錄服務(wù)器19。 如圖所示,服務(wù)器15包括文件16.1-16.n和可執(zhí)行文件18。另外,服務(wù)器15.1-15.5也包括文件16.1-16.n和可執(zhí)行文件18(未示出),這將在下面詳細 說明。在工作時,網(wǎng)絡(luò)瀏覽器11通過互聯(lián)網(wǎng)13向服務(wù)器15和15.1-15.5中 的 一 個發(fā)出請求。這種請求的 一 個例子是 "http:〃www.rv.tibco.com/whitepaper.html"。這個請求包括協(xié)議說明(http)、主 機地址(www.rv.tibco.com)(它是服務(wù)器15的地址)和文件說明 (whitepaper.html)。
通常,服務(wù)器15將此請求處理為基于文件的查找。接著服務(wù)器15將此 請求文件作為HTTP兼容文件,如頁面,返回到網(wǎng)絡(luò)瀏覽器ll。服務(wù)器15 可將此文件直接返回到網(wǎng)絡(luò)瀏覽器11或處理這個請求文件并將處理結(jié)果返 回。例如,文件的處理將向數(shù)據(jù)庫17發(fā)出請求和/或訪問目錄服務(wù)器19的文 件。
這樣,客戶、網(wǎng)絡(luò)瀏覽器11之間用服務(wù)器15建立起雙向或點到點的通
訊。通訊的建立是通過網(wǎng)絡(luò)瀏覽器11向服務(wù)器15發(fā)送HTTP請求。在查找 "http:〃www.rv.tibco.com/whitepaper.html"的例子中,月艮務(wù)器 15(在 "www.rv.tibco.com")將此請求翻譯成GET并確定客戶(網(wǎng)絡(luò)瀏覽器ll)需要
一個名為"whitepaper.html ")的文件。因此很有效,請求 "http:〃www.rv.tibco.com/whitepaper.html"是 一 個文件指針,其中 "whitepaper.html"是一個儲存在服務(wù)器www.rv.tibco.com上的文件,使用
HTTP協(xié)議將檢索服務(wù)器www.rv.tibco.com 。并且,在缺少后綴 "whitepaper.html"時,請求"http:〃www.rv.tibco.com"是將被翻譯成缺省頁
面GET請求的文件指針,通常是服務(wù)器 "ww.rv.tibco.com"上的 "index.html"。如圖1所示,目前的互聯(lián)網(wǎng)(HTTP/HTTPS/TCP/IP)結(jié)構(gòu)以基
于文件的網(wǎng)絡(luò)服務(wù)器為中心,依賴于客戶與服務(wù)器之間點到點的通訊。
結(jié)合了在較高安全性下對1周7天1天24小時(7x24)服務(wù)的永遠增長的
需求,基于文件的結(jié)構(gòu)極大地限制了不同服務(wù)器的縮放能力及其它更新和修改。特別是,基于文件的服務(wù)器必須在內(nèi)部升級以處理此系統(tǒng)的擴展名。這
意味著關(guān)閉服務(wù)器以便更新、升級和縮放,從而失去了7x24的服務(wù)。這樣, 基于文件的服務(wù)器難于維護、擴展和縮放,特別是當擴展客戶服務(wù)和動態(tài)實 時內(nèi)容增長時。
這個問題在多服務(wù)器環(huán)境下進一步惡化,如圖1所示。在圖1所示的具 有5個服務(wù)器15.1-15.5的多服務(wù)器環(huán)境中,需要將服務(wù)器15的內(nèi)容復(fù)制到 服務(wù)器15.1-15.5中的每一個。因此,這意味著所有文件16.1-16.n和可執(zhí)行 文件18必須復(fù)制5次,以用于服務(wù)器15.1-15.5中的每一個。同樣地,如圖 所示,對于每一個這種服務(wù)器中必須建立從服務(wù)器15和15.1-15.5到數(shù)據(jù)庫 17和目錄服務(wù)器19之間的點到點連接。
如前所述,更新和縮放需要對網(wǎng)絡(luò)服務(wù)器進行內(nèi)部更新,這意味著所有 計算機(服務(wù)器)必須關(guān)閉,對7x24的服務(wù)造成負面影響。這還意味著商家難 于擴展和使系統(tǒng)滿足客戶的需要。因此,就需要另外一種系統(tǒng)。
發(fā)明內(nèi)容
本發(fā)明提供了一種方法,該方法包括從客戶計算機接收點到點請求信 息,所述點到點請求信息包括協(xié)議說明、主機地址和文件說明;將點到點請 求信息轉(zhuǎn)換成基于主題的信息,該基于主題的信息以基于主題的尋址協(xié)議進 行尋址,該基于主題的信息包括所述點到點請求信息的文件說明;多點傳送 基于主題的信息;接收對基于主題的信息的響應(yīng),該對基于主題的信息的響 應(yīng)以基于主題的尋址協(xié)議進行尋址;將對基于主題的信息的響應(yīng)轉(zhuǎn)換成點到 點響應(yīng)信息;和將點到點響應(yīng)信息傳送回客戶計算機。
本發(fā)明還提供了一種根據(jù)超文本傳輸協(xié)議(HTTP)處理點到點請求的方
法,該方法包括從客戶計算機接收點到點請求信息,所述點到點請求信息 包括協(xié)議說明、主機地址和文件說明;將點到點請求信息轉(zhuǎn)換成基于主題的信息,該基于主題的信息以基于主題的尋址協(xié)議進行尋址,該基于主題的信 息包括所述點到點請求信息的文件說明;通過網(wǎng)絡(luò)將基于主題的信息多點傳 送到多個應(yīng)用程序服務(wù)器;從多個應(yīng)用程序服務(wù)器中的一個接收對基于主題 的信息的響應(yīng),該對基于主題的信息的響應(yīng)以基于主題的尋址協(xié)議進行尋 址;從對所述基于主題的信息的響應(yīng)中提取內(nèi)容;使用從對所述基于主題的 信息的響應(yīng)中提取的內(nèi)容生成點到點響應(yīng);和將點到點響應(yīng)傳送回客戶計算 機。
本發(fā)明還提供了一種與網(wǎng)絡(luò)連接的應(yīng)用程序服務(wù)器,該應(yīng)用程序服務(wù)器 包括具有數(shù)據(jù)的數(shù)據(jù)庫;與數(shù)據(jù)庫連接的處理器,該處理器處理從服務(wù)器 接收的基于主題的信息,該基于主題的信息以基于主題的尋址協(xié)議進行尋址 并且包括對數(shù)據(jù)內(nèi)容的請求,其中基于主題的信息從客戶計算機接收的點到 點信息中生成,所述點到點請求信息包括協(xié)議說明、主機地址和文件說明, 所述基于主題的信息包括所述點到點請求信息的文件說明,所述處理包括-接聽從網(wǎng)絡(luò)上接收的基于主題的請求信息以檢測所述基于主題的請求信息 的主題;根據(jù)基于主題的信息中的請求從數(shù)據(jù)庫中提取部分數(shù)據(jù);生成基于 主題的響應(yīng)信息,該響應(yīng)信息包括從數(shù)據(jù)庫中提取的部分數(shù)據(jù);和將基于主 題的響應(yīng)信息傳送回服務(wù)器。
本發(fā)明還提供了一種系統(tǒng),該系統(tǒng)包括與網(wǎng)絡(luò)連接的服務(wù)器,該服務(wù)器 從網(wǎng)絡(luò)瀏覽器接收根據(jù)超文本傳輸協(xié)議(HTTP)的點到點請求信息并處理該 點到點請求信息,所述點到點請求信息包括協(xié)議說明、主機地址和文件說明, 所述點到點請求信息的處理包括將點到點請求信息轉(zhuǎn)換成基于主題的信 息,該基于主題的信息包括所述點到點請求信息的文件說明;多點傳送基于 主題的信息,該基于主題的信息與接收者的地址無關(guān);接收對基于主題的信 息的響應(yīng);將對基于主題的信息的響應(yīng)轉(zhuǎn)換成點到點響應(yīng)信息;和將點到點 響應(yīng)信息傳送回網(wǎng)絡(luò)瀏覽器;該系統(tǒng)還包括與網(wǎng)絡(luò)連接的多個應(yīng)用程序服務(wù)器,該多個應(yīng)用程序服務(wù)器中的每一個包括具有數(shù)據(jù)的數(shù)據(jù)庫;該系統(tǒng)還包 括與數(shù)據(jù)庫連接的處理器,該處理器處理從服務(wù)器接收的基于主題的信息, 該基于主題的信息的處理包括接聽從網(wǎng)絡(luò)上接收的基于主題的請求信息; 根據(jù)基于主題的信息中的請求從數(shù)據(jù)庫中提取部分數(shù)據(jù);生成基于主題的響 應(yīng)信息,該響應(yīng)信息包括從數(shù)據(jù)庫中提取的部分數(shù)據(jù);和將基于主題的響應(yīng) 信息傳送回服務(wù)器。
參考以下的描述和說明實施方式的附圖將能更好地理解本發(fā)明的實施 方式。在附圖中-
圖1是表示現(xiàn)有技術(shù)中的瀏覽器、網(wǎng)絡(luò)服務(wù)器和應(yīng)用程序服務(wù)器的系統(tǒng)
圖2是表示按照本發(fā)明的實施方式的瀏覽器、網(wǎng)絡(luò)服務(wù)器和應(yīng)用程序服 務(wù)器的系統(tǒng)圖3是表示按照本發(fā)明的實施方式的瀏覽器、網(wǎng)絡(luò)服務(wù)器、應(yīng)用程序服 務(wù)器和其中功能性的系統(tǒng)圖4是流程圖,表示按照本發(fā)明的實施方式的處理具有基于主題請求信 息的請求的方法;
圖5是表示本發(fā)明的實施方式的系統(tǒng)應(yīng)用程序的框圖。
具體實施例方式
下面描述網(wǎng)絡(luò)通訊中基于匿名主題尋址的方法和設(shè)備。相應(yīng)地,這里使 用了網(wǎng)絡(luò)中與基于主題尋址的不同的術(shù)語。術(shù)語"發(fā)表"是"發(fā)送"的同義
詞,而術(shù)語"預(yù)訂"是"接聽"的同義詞。并且,在下面的描述中,為了進 行解釋,提供了大量特定描述以便徹底理解本發(fā)明。但是,沒有這些特定描述也能實施本發(fā)明,這對于本領(lǐng)域熟知人員是很明顯的。
圖2是表示按照本發(fā)明實施方式的瀏覽器、網(wǎng)絡(luò)服務(wù)器和應(yīng)用程序服務(wù) 器的系統(tǒng)圖。具體地,圖2中包括網(wǎng)絡(luò)瀏覽器11、網(wǎng)絡(luò)202、服務(wù)器204、 網(wǎng)絡(luò)通道206和應(yīng)用程序服務(wù)器208-214。網(wǎng)絡(luò)瀏覽器11通過網(wǎng)絡(luò)202與服 務(wù)器204連接。并且服務(wù)器204通過網(wǎng)絡(luò)通道206與應(yīng)用程序服務(wù)器208-214 連接。
在一個實施方式中,網(wǎng)絡(luò)202是局域網(wǎng)(LAN)。在另一個實施方式中, 網(wǎng)絡(luò)202是廣域網(wǎng)(WAN)。在一個這種實施方式中,網(wǎng)絡(luò)202是互聯(lián)網(wǎng)。并 且,網(wǎng)絡(luò)202可以是在網(wǎng)絡(luò)瀏覽器11和服務(wù)器204-214之間提供通訊的不同 網(wǎng)絡(luò)的組合。另外,圖2的拓撲結(jié)構(gòu)僅是一個例子而不具有限制性,因為本 發(fā)明實施方式中有其它類型的拓撲結(jié)構(gòu)。例如,服務(wù)器204-214之間的連接 可以通過網(wǎng)絡(luò)202,而不是通過與網(wǎng)絡(luò)202分離的網(wǎng)絡(luò)通道206。
圖3是表示按照本發(fā)明實施方式的瀏覽器、網(wǎng)絡(luò)服務(wù)器、應(yīng)用程序服務(wù) 器和其中功能性的系統(tǒng)圖。具體地,圖3表示按照本發(fā)明實施方式的服務(wù)器 204和應(yīng)用程序服務(wù)器208-214的工作方法。由于簡化的原因,圖3中的一 個方塊表示每個應(yīng)用程序服務(wù)器208-214的功能。在工作時,網(wǎng)絡(luò)瀏覽器ll 通過網(wǎng)絡(luò)202將HTTP協(xié)議的數(shù)據(jù)請求傳送到服務(wù)器204。服務(wù)器204在處 理方塊302接收HTTP請求。
服務(wù)器204在過程塊304將此HTTP請求轉(zhuǎn)換成基于主題的用于發(fā)表/ 預(yù)訂通訊的請求。發(fā)表/預(yù)訂通訊技術(shù)加速實時信息的傳送,例如在金融業(yè)。 特別是,發(fā)表/預(yù)訂通訊使應(yīng)用程序在任何環(huán)境下能可靠而明顯地共享最新的 信息。在這種通訊中, 一個給定的發(fā)表/預(yù)訂信息經(jīng)過網(wǎng)絡(luò),從而使與此網(wǎng)絡(luò) 連接的設(shè)備,例如服務(wù)器,預(yù)訂不同的發(fā)表/預(yù)訂信息。例如, 一個給定的發(fā) 表/預(yù)訂信息是關(guān)于存儲于網(wǎng)絡(luò)上不同服務(wù)器上的特殊文件。此信息要被格式 化,以便當接收信息時預(yù)訂者知道哪個文件需要被返回到最初傳送發(fā)表/預(yù)訂信息的請求設(shè)備。對比之下,點到點通訊將相同的信息單獨傳送到每個預(yù)訂 者,從而浪費了網(wǎng)絡(luò)帶寬并減慢了這種信息的傳送。
另外,服務(wù)器204在過程塊306指定一個應(yīng)答主休,并且在過程塊308 發(fā)表基于主題的信息。在一個實施方式中,主題的名字是一個描述信息內(nèi)容 并指出信息目的地的字符串。基于主題的尋址技術(shù)有助于信息達到其目的 地,而不需要應(yīng)用程序設(shè)計者詳細了解網(wǎng)絡(luò)地址、協(xié)議、數(shù)據(jù)包、端口和插 槽。在一個實施方式中,這種應(yīng)用程序設(shè)計者將一些慣例用于直覺的、人類 可讀的主題名稱。
并且,傳統(tǒng)的網(wǎng)絡(luò)程序?qū)P地址結(jié)合到信息分配中,從而將程序綁定 到具體的計算機設(shè)備。相反,基于主題的尋址應(yīng)用程序通過主題名稱共享信 息,從而將應(yīng)用程序釋放出來可在網(wǎng)絡(luò)的任何位置上的任何計算機設(shè)備上運 行。特別是,需引起注意的設(shè)備,例如網(wǎng)絡(luò)上的服務(wù)器,接聽(預(yù)訂)具體主 題的名稱。因此,當?shù)谝辉O(shè)備(發(fā)表者)發(fā)表一條關(guān)于具體主題名稱的信息以 及網(wǎng)絡(luò)上的其它設(shè)備(預(yù)訂者)正在接收(預(yù)訂)此主題名稱時,這種基于主題 尋址的方案將信息從發(fā)表者可靠地傳遞到預(yù)訂者。從而任何在網(wǎng)絡(luò)設(shè)備上執(zhí) 行的應(yīng)用程序?qū)⑿畔魉偷饺魏纹渌诰W(wǎng)絡(luò)設(shè)備上運行的應(yīng)用程序。這種基 于主題尋址的方案使分布式系統(tǒng)更加靈活和可維護。
因此應(yīng)用程序通過接聽來接收信息。另外,在一個實施方式中,給定設(shè) 備的接聽將主題名稱與此設(shè)備上執(zhí)行的反饋功能聯(lián)系在一起。特別是,當信 息到達時,基于主題的尋址軟件通過將給定的主題名稱與特定的反饋功能匹 配而將該信息發(fā)送至合適的反饋功能。
如所描述,基于主題的尋址技術(shù)允許局部透明。該技術(shù)中的發(fā)表者和預(yù) 訂者可以在網(wǎng)絡(luò)上的任何計算機上運行。并且,服務(wù)器應(yīng)用程序能移動和復(fù) 制(共享一個龐大的客戶作業(yè))而不影響存在著的客戶。例如,因為發(fā)表者(或 客戶)不需要知道預(yù)訂者的具體的地址(如IP地址),所以就能增加、刪除或個性化預(yù)訂者而不影響發(fā)表者如何傳送它的基于主題的信息。因此,這種基 于主題尋址的技術(shù)使最終用戶建立適于容易地改變和增長的縮放作業(yè)流系統(tǒng)。
在任務(wù)繁重期間出現(xiàn)建立縮放作業(yè)流系統(tǒng)的一個實例,因為系統(tǒng)需要通 過增加資源以適應(yīng)這種任務(wù)來作出響應(yīng)。老系統(tǒng)需要事先對系統(tǒng)升級。即使 這樣,在聯(lián)機數(shù)極大并且需要網(wǎng)絡(luò)服務(wù)器處理的同時請求很多時,人們?nèi)钥?以逃脫防衛(wèi)。當這種情況發(fā)生時,當前結(jié)構(gòu)不能平衡,它們用綁定資源靜態(tài) 地創(chuàng)建系統(tǒng),因為快速適應(yīng)不是一個可能的選擇。在本發(fā)明的實施方式中, 額外的資源可以快速地和實時地動態(tài)加入,以減少等待時間和避免拒絕用戶 的服務(wù)。當任務(wù)減少時這些后端系統(tǒng)也能使它們自己離線。
再看圖3,在一種實施方式中,基于主題的請求信息通過網(wǎng)絡(luò)206多點 傳送。在這樣一個實施方式中,應(yīng)用程序服務(wù)器208、 210、 212和214在過 程塊310接聽給定主題的請求。根據(jù)接收的基于主題的請求,應(yīng)用程序服務(wù) 器208、 210、 212和214在過程塊312通過檢索給定主題的目錄處理這樣的 請求。在一個實施方式中,從存儲在應(yīng)用程序服務(wù)器208、 210、 212和214 中的本地數(shù)據(jù)庫找到目錄。但是,本發(fā)明的實施方式不限于此,因為從其它 位置也能找到這種目錄。例如,可以存儲在另外一個遠程服務(wù)器上。并且, 在過程塊314,應(yīng)用程序服務(wù)器208、 210、 212和214利用具有應(yīng)答主題的 信息發(fā)表此檢索的目錄,此應(yīng)答主題在過程塊306由服務(wù)器204分配。
在一個實施方式中, 一旦基于主題的請求在過程塊308發(fā)表時,在過程 塊316,服務(wù)器204開始接聽基于主題的信息的響應(yīng)。根據(jù)從任一個應(yīng)用程 序服務(wù)器208、 210、 212和214接收的基于主題的信息的響應(yīng),服務(wù)器204 根據(jù)響應(yīng)內(nèi)的區(qū)域和內(nèi)容產(chǎn)生點到點的響應(yīng)。在一個實施方式中,此點到點 的響應(yīng)是根據(jù)HTTP協(xié)議。下面結(jié)合圖4詳細描述這種點到點的響應(yīng)的產(chǎn)生。 服務(wù)器204在過程塊318將此點到點的響應(yīng)通過網(wǎng)絡(luò)202傳送回網(wǎng)絡(luò)瀏覽器11。在一個實施方式中,根據(jù)接收的這種響應(yīng),網(wǎng)絡(luò)瀏覽器11產(chǎn)生一個網(wǎng) 頁,將此響應(yīng)的內(nèi)容顯示給網(wǎng)絡(luò)瀏覽器11的用戶。但是,本發(fā)明的實施方 式并不限于此,因為網(wǎng)絡(luò)瀏覽器11根據(jù)接收的這種響應(yīng)也進行其它的操作。
例如,這種響應(yīng)可以轉(zhuǎn)向到其它網(wǎng)頁,從而使網(wǎng)絡(luò)瀏覽器11向服務(wù)器204 產(chǎn)生新的HTTP協(xié)議請求。
因此,網(wǎng)絡(luò)瀏覽器11使用TCP/IP/HTTP/HTTPS系列的協(xié)議通過網(wǎng)絡(luò) 202發(fā)送HTTP/HTTPS兼容協(xié)議。服務(wù)器204從網(wǎng)絡(luò)瀏覽器11接收此請求、 數(shù)據(jù)包或信息并將之轉(zhuǎn)換成基于主題的請求。例如網(wǎng)絡(luò)瀏覽器11的原始請 求"http:〃www.rv.tibco.com/whitepaper.html "轉(zhuǎn)換成基于主題的信息 "whitepaper.html"。注意,接收此瀏覽器請求的服務(wù)器204是地址為 "http:〃www.rv.tibco.com"的服務(wù)器。在指定應(yīng)答主題后,例如"A762 whitepaper.html",服務(wù)器204通過網(wǎng)絡(luò)206多點傳送基于主題的請求,使得 接聽此特殊的基于主題的信息的所有服務(wù)器(如應(yīng)用程序服務(wù)器208-214)能 收到此信息。在一個實施方式中,應(yīng)用程序服務(wù)器208-214是具有多臺計算 機的局域網(wǎng)或廣域網(wǎng)。在一個實施方式中,應(yīng)用程序服務(wù)器208-214是可升 級的。并且,在一個實施方式中,服務(wù)器204和208-214可位于同一服務(wù)器。
圖4是流程圖,表示按照本發(fā)明實施方式的處理具有基于主題的信息的 請求的方法。具體地,圖4表示的方法400從網(wǎng)絡(luò)瀏覽器11在過程塊402 發(fā)出請求開始。網(wǎng)絡(luò)瀏覽器11在過程塊404使用TCP/IP/HTTP/HTTPS系列 協(xié)議通過網(wǎng)絡(luò)202發(fā)送HTTP/HTTPS兼容請求。因此,服務(wù)器204在過程 塊406接收該請求。服務(wù)器204在過程塊408將點到點請求轉(zhuǎn)換成基于主題 的信息。例如,如果來自網(wǎng)絡(luò)瀏覽器11的請求是一個文件請求,如 "http:〃…/whitepaper.html",此請求被轉(zhuǎn)換成主題空間"whitepaper.html"。
并且,在過程塊410HTTP請求被轉(zhuǎn)換成名稱/數(shù)值對并打包到基于主題 的信息內(nèi)。另外,服務(wù)器204在過程塊412產(chǎn)生應(yīng)答主題。在一個實施方式中,這種應(yīng)答主題的產(chǎn)生包括產(chǎn)生對所有由服務(wù)器204在此特定主題上隨后 發(fā)表的信息的接聽。這些信息代表其內(nèi)容將被發(fā)送到網(wǎng)絡(luò)瀏覽器11上的響 應(yīng)。并且,應(yīng)答主題的產(chǎn)生包括發(fā)表基于主題的請求。
當一個應(yīng)用程序服務(wù)器208-214對基于主題的請求返回響應(yīng)時,服務(wù)器 204在過程塊414接收此基于先前指定的應(yīng)答主題的響應(yīng)。并且,服務(wù)器204 在過程塊416根據(jù)此基于主題的響應(yīng)的內(nèi)容和類型域產(chǎn)生點到點的響應(yīng)。在 一個實施方式中,該點到點的響應(yīng)是HTTP或HTTPS響應(yīng)。接著,服務(wù)器 204在過程塊418將此點到點的響應(yīng)傳送回網(wǎng)絡(luò)瀏覽器11。在一個實施方式 中,網(wǎng)絡(luò)瀏覽器11在過程塊420將此響應(yīng)顯示成HTML網(wǎng)頁。但是,如前 所述,從服務(wù)器204返回的響應(yīng)并不局限于以網(wǎng)頁顯示,因為本發(fā)明的實施 方式可包括其它任何類型的、服務(wù)器與客戶計算機間的響應(yīng)通訊。
圖5是表示本發(fā)明實施方式的系統(tǒng)應(yīng)用程序的框圖。與圖2相似,圖5 包括網(wǎng)絡(luò)瀏覽器ll、網(wǎng)絡(luò)202、服務(wù)器204、網(wǎng)絡(luò)通道206和應(yīng)用程序服務(wù) 器208-214。網(wǎng)絡(luò)瀏覽器11通過網(wǎng)絡(luò)202與服務(wù)器204連接。并且服務(wù)器204 通過網(wǎng)絡(luò)通道206與應(yīng)用程序服務(wù)器208-214連接。
另外,如圖所示,應(yīng)用程序服務(wù)器214中包括多個服務(wù)器(應(yīng)用程序服 務(wù)器214.1-21《n)。在一個實施方式中,應(yīng)用程序服務(wù)器214.1-214,n通過局 域網(wǎng)(LAN)互相連接。在另一個實施方式中,應(yīng)用程序服務(wù)器214.1-214.n通 過廣域網(wǎng)(WAN)互相連接。在這樣的一個實施方式中,應(yīng)用程序服務(wù)器 214.1-214.n通過互聯(lián)網(wǎng)互相連接。并且,應(yīng)用程序服務(wù)器214.1-214.n能通 過可在這些應(yīng)用程序服務(wù)器間提供通訊的不同類型的網(wǎng)絡(luò)互相連接。
基于主題的尋址,與基于點到點的尋址對比,允許請求信息的排隊和任 務(wù)平衡,如圖5所示。本發(fā)明的實施方式其中也有分布隊列,這將通過應(yīng)用 程序服務(wù)器214的結(jié)構(gòu)和工作加以說明。
在工作時,應(yīng)用程序服務(wù)器214.1-214.n結(jié)合有一個分布隊列,使接收到的基于主題的信息,如前面圖3-4的結(jié)構(gòu)所描述的,位于隊列中。并且, 應(yīng)用程序服務(wù)器214.1-214.n中的一個被指定為此分布隊列的活動調(diào)度程序。 在一個實施方式中,根據(jù)調(diào)度程序的權(quán)重確定活動的調(diào)度程序。調(diào)度程序權(quán) 重代表一個組元相對于隊列中的其它組元進行通話完成調(diào)度程序功能的能 力。在這樣的一個實施方式中,調(diào)度程序權(quán)重是基于其中資源的可用性。并 且,在一個實施方式中,具有最高調(diào)度程序權(quán)重的應(yīng)用程序服務(wù)器 214.1-214.n被指定為調(diào)度程序。
另外,在一個實施方式中,給定的服務(wù)器(如應(yīng)用程序服務(wù)器214.1),其 是活動的調(diào)度程序,將心跳(heartbeat)信息以具體時間間隔傳送到分布隊列 的其它服務(wù)器組元(如應(yīng)用程序214.2-214.ri)。這些心跳信息通知其它組元服 務(wù)器活動的調(diào)度程序仍是激活的。因此,分布隊列中的每個服務(wù)器都指定相 同的調(diào)度程序激活間隔,以接收這些心跳信息。當來自活動調(diào)度程序的心跳 信息對此激活間隔沒有反應(yīng),則剩余隊列組元中具有最大調(diào)度程序權(quán)重的隊 列組元取代活動調(diào)度程序的位置作為新的活動調(diào)度程序。
因此,此類調(diào)度提供必需的缺省誤差,以使給定組元服務(wù)器214.1-214,n 作為分布隊列的調(diào)度程序。任何組元服務(wù)器214.1-214.n都可能成為調(diào)度程 序,因為這些缺省誤差參數(shù)(如調(diào)度權(quán)重)選擇最適合的組元服務(wù)器作為分布 隊列的活動調(diào)度程序。
并且,所有應(yīng)用程序服務(wù)器,包括作為分布隊列一部分的活動調(diào)度程序, 都被指定為工作者或接聽者,因為這些應(yīng)用程序服務(wù)器接聽進入分布隊列的 基于主題的信息并被分配了工作或處理這些基于主題的信息。在一個實施方 式中,分布隊列的應(yīng)用程序服務(wù)器214.1-214.能夠共享相同的可重復(fù)使用的 通訊名稱,指示出它們是具有這個名稱的隊列中的組元。在一個這樣的實施 方式中,每個分布隊列中的組元接聽相同的主題。但是,即使當每個組元接 聽每個入站信息時,僅有一個組元處理信息。特別是,當基于主題的信息接收到分布隊列中的應(yīng)用程序服務(wù)器
214.1-214.n時,活動調(diào)度程序(如應(yīng)用程序服務(wù)器214.1),將處理此基于主題 的信息的任務(wù)分配給任意的在此分布隊列中的應(yīng)用程序服務(wù)器,包括活動調(diào) 度程序。在一個實施方式中,活動調(diào)度程序根據(jù)工作者或接聽者的權(quán)重分配 處理給定的基于主題的信息的任務(wù)。
在這樣一個實施方式中,活動調(diào)度程序?qū)⑻幚砣蝿?wù)分配給具有最大工作 者或接聽者權(quán)重的可用的工作者或接聽者。在一個實施方式中,除去下列情 況外工作者或接聽者被認為是可用的(l)分配給此工作者或接聽者的未處理 的任務(wù)超過了它的任務(wù)容量,或(2)工作者或接聽者是活動調(diào)度程序。但是, 當沒有其它工作者或接聽者可用時,活動調(diào)度程序不分配任務(wù)給自己。
任務(wù)容量是指工作者或接聽者能接受的最大數(shù)量的任務(wù)。在一個實施方 式中,當可接受的任務(wù)數(shù)量達到這個最大值時,工作者或接聽者不能接受額 外的任務(wù),直到至少一個當前未處理的任務(wù)完成。根據(jù)所接收的進入的基于 主題的信息的任務(wù),活動調(diào)度程序?qū)⒋巳蝿?wù)分配給具有最大工作者或接聽者 權(quán)重的未解決任務(wù),除非分配給此工作者或接聽者的未處理的任務(wù)超過了它 的任務(wù)容量。在一個實施方式中,當優(yōu)選的工作者或接聽者超出了它自己的 任務(wù)容量時,活動調(diào)度程序?qū)⒋诵氯蝿?wù)分配給具有次大工作者或接聽者權(quán)重 的工作者或接聽者。
在一個實施方式中,當服務(wù)器在分布隊列中時分配給服務(wù)器的缺省任務(wù) 容量是1個。但是,這個數(shù)值可以根據(jù)很多不同因素修改。在一個實施方式 中,在一個包括很多處理器的服務(wù)器上,處理器用于執(zhí)行多線程程序,這種 服務(wù)器具有的任務(wù)容量為n,將n個線程和n個處理器分配給入站任務(wù)。
在一個實施方式中,通訊時間滯后考慮在給定服務(wù)器的任務(wù)容量中。在 多數(shù)分布隊列應(yīng)用程序中,通訊時間是任務(wù)轉(zhuǎn)向時間中不重要的一部分。換 句話說,與需要處理實際任務(wù)的時間相比,分配任務(wù)和表示完成所需的時間非常小。例如,當平均任務(wù)轉(zhuǎn)向時間為2000毫秒,其中通訊時間在總時間 中占10毫秒,任務(wù)容量與處理器或線程的數(shù)目相同。
但是,在某些情況下,通訊時間是重要的。例如,當隊列組元分布于由 WAN或互聯(lián)網(wǎng)或內(nèi)部網(wǎng)連接起來的遠距離網(wǎng)站上時,通訊時間變得非常重 要。當通訊時間變得重要時,任務(wù)容量的意義發(fā)生改變。特別是,不表示接 聽者能同時處理的任務(wù)數(shù)量,此時任務(wù)容量表示盡管存在通訊時間滯后也能 飽和接聽者容量的任務(wù)數(shù)量。例如,當平均任務(wù)轉(zhuǎn)向時間是1500毫秒,其 中平均任務(wù)處理時間和通訊時間分別為1000毫秒和500毫秒,設(shè)置任務(wù)容 量以解決通訊時間將任務(wù)之間的接聽者空閑時間最小化。
因此,當用任務(wù)容量補償通訊時間滯后時,平衡是關(guān)鍵。使接聽者任務(wù) 不足(通過設(shè)置它的任務(wù)容量非常小)能使接聽者保持空閑,同時等待活動調(diào) 度程序為它分配下一任務(wù)。相反,使接聽者任務(wù)過多(通過設(shè)置它的任務(wù)容 量非常大)能使一些被分配的任務(wù)處于等待,而其它可以接受這些任務(wù)的接 聽者處于空閑。在一個實施方式中,應(yīng)用程序服務(wù)器214.1-214.n支持多種 服務(wù)器用于傳送基于主題的信息。
如前所述,分布隊列査詢所有n個應(yīng)用程序服務(wù)器不希望出現(xiàn)的問題, 以使特定的應(yīng)用程序服務(wù)器214得到每一條由服務(wù)器204發(fā)表的信息。通常, 在組214中的所有服務(wù)器執(zhí)行相同的任務(wù)。例如,這是不希望出現(xiàn)的,因為 組214中n個應(yīng)用程序服務(wù)器中的每一個都起作用。另外,如果每個應(yīng)用程 序服務(wù)器都接收信息(并可能對此作出響應(yīng)),這將浪費網(wǎng)絡(luò)帶寬。
雖然如此,必須強制組214的n個應(yīng)用程序服務(wù)器中至少有一個接收信 息,并且待加載的任務(wù)在所有可能的應(yīng)用程序服務(wù)器之間是平衡的,即理想 情況下系統(tǒng)僅將信息傳送到n個應(yīng)用程序服務(wù)器214中的一個。這種情況在 需要大量應(yīng)用程序服務(wù)器214提供所需的缺省誤差水平和/或任務(wù)平衡的地 方出現(xiàn)。例如,在應(yīng)用程序不適合或信息傳送絕對緊急的情況下,缺省誤差是重要的。
在本發(fā)明的實施方式中,組214中的每個應(yīng)用程序服務(wù)器傳送信息到n 個應(yīng)用程序服務(wù)器中的一個,如服務(wù)器214.1,作為活動調(diào)度程序,并給出 權(quán)重指示。接著,通過將接收的基于主題的信息發(fā)送到組中具有最大權(quán)重的 特定的應(yīng)用程序服務(wù)器,活動的調(diào)度程序214.1作出響應(yīng)。因此,組214中 分布隊列的預(yù)訂服務(wù)器接收代表任務(wù)的信息(更新或査詢)。系統(tǒng)準確地將每 一項任務(wù)分配到每一個服務(wù)器,而這組服務(wù)器和任務(wù)的分布對于網(wǎng)絡(luò)服務(wù)器 仍徹底保持透明。分布隊列和任務(wù)調(diào)度特征在出版的PCT申請WO99/09490 中有詳細描述,此專利在此作為參考文獻。
另外,計算設(shè)備,例如這里所描述的服務(wù)器,可包括處理單元和存儲器 (未示出)。這種存儲器包括可機器閱讀的介質(zhì),在上面存儲了一系列的信息 (即軟件),體現(xiàn)了任一種,或所有的,上述方法。軟件能完全或至少是部分 地駐留在此儲存器中,或/和在處理單元內(nèi)。為了說明的目的,術(shù)語"機器可 閱讀的介質(zhì)"需要包括任一種提供(即儲存和/或傳送)可機器(如計算機)閱讀 形式的信息的機構(gòu)。例如, 一種可機器閱讀的介質(zhì)包括只讀存儲器(ROM); 隨機存取存儲器(RAM);磁盤儲存介質(zhì);光儲存介質(zhì);閃存裝置;電子、光 學(xué)、聽覺的或其它形式的傳播信號(如載波、紅外信號、數(shù)字信號,等等); 等等。
這樣,描述了網(wǎng)絡(luò)通訊中基于匿名主題尋址的方法和設(shè)備。盡管參考具 體的實施方式說明了本發(fā)明,很明顯的是,在不偏離本發(fā)明的精神和范圍的 情況下可以對這些實施方式作出各種修改和變化。例如,描述的本發(fā)明的實 施方式在給定的網(wǎng)絡(luò)瀏覽器和給定的服務(wù)器之間使用TCP/IP/HTTP/HTTPS 協(xié)議。但是,這種實施方式是作為實例,而不是出于限制,因為其它類型的 點到點協(xié)議能被給定的服務(wù)器接收并轉(zhuǎn)換成基于主題的信息。
對這些實施方式作出修改的另一個實例是去除網(wǎng)絡(luò)通道206,如圖2、 3和5。具體說,本發(fā)明的實施方式并不受限于將基于主題的信息傳送到與網(wǎng) 絡(luò)通道206連接的外部服務(wù)器,因為基于主題的信息可以被傳送到服務(wù)器
204進行本地處理。因此,說明和附圖是為了解釋,而不是為了限制的目的。
權(quán)利要求
1、一種方法,包括從客戶計算機接收點到點請求信息,所述點到點請求信息包括協(xié)議說明、主機地址和文件說明;將點到點請求信息轉(zhuǎn)換成基于主題的信息,該基于主題的信息以基于主題的尋址協(xié)議進行尋址,該基于主題的信息包括所述點到點請求信息的文件說明;多點傳送基于主題的信息;接收對基于主題的信息的響應(yīng),該對基于主題的信息的響應(yīng)以基于主題的尋址協(xié)議進行尋址;將對基于主題的信息的響應(yīng)轉(zhuǎn)換成點到點響應(yīng)信息;和將點到點響應(yīng)信息傳送回客戶計算機。
2、 如權(quán)利要求1所述的方法, 定應(yīng)答主題。
3、 如權(quán)利要求1所述的方法, 傳輸協(xié)議。
4、 如權(quán)利要求1所述的方法, 接收基于主題的信息的用戶。
5、 如權(quán)利要求4所述的方法, 戶的組能動態(tài)變化。其中所述轉(zhuǎn)換包括為基于主題的信息指其中所述點到點請求信息是基于超文本其中所述基于主題的信息指示一組用于其中所述用于接收基于主題的信息的用
6、如權(quán)利要求1所述的方法,其中所述基于主題的信息與接收者的身份無關(guān)。
7、 如權(quán)利要求1所述的方法,其中所述基于主題的信息與基于主題的 信息的接收者使用的協(xié)議無關(guān)。
8、 一種根據(jù)超文本傳輸協(xié)議(HTTP)處理點到點請求的方法,該方法包括從客戶計算機接收點到點請求信息,所述點到點請求信息包括協(xié)議說 明、主機地址和文件說明;將點到點請求信息轉(zhuǎn)換成基于主題的信息,該基于主題的信息以基于主 題的尋址協(xié)議進行尋址,該基于主題的信息包括所述點到點請求信息的文件 說明;通過網(wǎng)絡(luò)將基于主題的信息多點傳送到多個應(yīng)用程序服務(wù)器; 從多個應(yīng)用程序服務(wù)器中的一個接收對基于主題的信息的響應(yīng),該對基 于主題的信息的響應(yīng)以基于主題的尋址協(xié)議進行尋址; 從對所述基于主題的信息的響應(yīng)中提取內(nèi)容;使用從對所述基于主題的信息的響應(yīng)中提取的內(nèi)容生成點到點響應(yīng);和 將點到點響應(yīng)傳送回客戶計算機。
9、 如權(quán)利要求8所述的方法,其中所述轉(zhuǎn)換包括為基于主題的信息指 定應(yīng)答主題。
10、 如權(quán)利要求8所述的方法,其中所述基于主題的信息指示一組用于 接收基于主題的信息的用戶。
11、 如權(quán)利要求10所述的方法,其中所述用于接收基于主題的信息的用戶的組能動態(tài)變化。
12、 如權(quán)利要求10所述的方法,其中所述基于主題的信息與接收者的 身份無關(guān)。
13、 如權(quán)利要求10所述的方法,其中所述基于主題的信息與基于主題 的信息的接收者使用的協(xié)議無關(guān)。
14、 一種與網(wǎng)絡(luò)連接的應(yīng)用程序服務(wù)器,該應(yīng)用程序服務(wù)器包括 具有數(shù)據(jù)的數(shù)據(jù)庫;與數(shù)據(jù)庫連接的處理器,該處理器處理從服務(wù)器接收的基于主題的信 息,該基于主題的信息以基于主題的尋址協(xié)議進行尋址并且包括對數(shù)據(jù)內(nèi)容 的請求,其中基于主題的信息從客戶計算機接收的點到點信息中生成,所述 點到點請求信息包括協(xié)議說明、主機地址和文件說明,所述基于主題的信息 包括所述點到點請求信息的文件說明,所述處理包括接聽從網(wǎng)絡(luò)上接收的基于主題的請求信息以檢測所述基于主題的請求 信息的主題;根據(jù)基于主題的信息中的請求從數(shù)據(jù)庫中提取部分數(shù)據(jù); 生成基于主題的響應(yīng)信息,該響應(yīng)信息包括從數(shù)據(jù)庫中提取的部分數(shù) 據(jù);禾口將基于主題的響應(yīng)信息傳送回服務(wù)器。
15、 如權(quán)利要求14所述的應(yīng)用程序服務(wù)器,其中所述點到點請求信息 是基于超文本傳輸協(xié)議。
16、 如權(quán)利要求14所述的應(yīng)用程序服務(wù)器,其中所述基于主題的響應(yīng)信息包括由服務(wù)器指定的應(yīng)答主題。
17、 如權(quán)利要求14所述的應(yīng)用程序服務(wù)器,其中所述基于主題的信息與接收者的身份無關(guān)。
18、 如權(quán)利要求14所述的應(yīng)用程序服務(wù)器,其中所述基于主題的信息 與基于主題的信息的接收者使用的協(xié)議無關(guān)。
19、 一種系統(tǒng),包括與網(wǎng)絡(luò)連接的服務(wù)器,該服務(wù)器從網(wǎng)絡(luò)瀏覽器接收根據(jù)超文本傳輸協(xié)議(HTTP)的點到點請求信息并處理該點到點請求信息,所述點到點請求信息包括協(xié)議說明、主機地址和文件說明,所述點到點請求信息的處理包括將點到點請求信息轉(zhuǎn)換成基于主題的信息,該基于主題的信息包括所述點到點請求信息的文件說明;多點傳送基于主題的信息,該基于主題的信息與接收者的地址無關(guān);接收對基于主題的信息的響應(yīng);將對基于主題的信息的響應(yīng)轉(zhuǎn)換成點到點響應(yīng)信息;和 將點到點響應(yīng)信息傳送回網(wǎng)絡(luò)瀏覽器; 與網(wǎng)絡(luò)連接的多個應(yīng)用程序服務(wù)器,該多個應(yīng)用程序服務(wù)器中的每一個 包括具有數(shù)據(jù)的數(shù)據(jù)庫; 與數(shù)據(jù)庫連接的處理器,該處理器處理從服務(wù)器接收的基于主題的信 息,該基于主題的信息的處理包括接聽從網(wǎng)絡(luò)上接收的基于主題的請求信息;根據(jù)基于主題的信息中的請求從數(shù)據(jù)庫中提取部分數(shù)據(jù); 生成基于主題的響應(yīng)信息,該響應(yīng)信息包括從數(shù)據(jù)庫中提取的部分 數(shù)據(jù);和將基于主題的響應(yīng)信息傳送回服務(wù)器。
20、 如權(quán)利要求19所述的系統(tǒng),該系統(tǒng)還包括分布隊列,該分布隊列 從服務(wù)器接收基于主題的信息,其中多個應(yīng)用程序服務(wù)器中的一個調(diào)度哪個 應(yīng)用程序服務(wù)器將處理分布隊列中接收的基于主題的信息。
21、 如權(quán)利要求19所述的系統(tǒng),其中多個應(yīng)用程序服務(wù)器能動態(tài)變化。
22、 如權(quán)利要求19所述的系統(tǒng),其中基于主題的信息與多個應(yīng)用程序 服務(wù)器使用的協(xié)議無關(guān)。
23、 如權(quán)利要求l所述的方法,其中接收者以基于主題的信息的主題為 基礎(chǔ)響應(yīng)于該基于主題的信息。
全文摘要
一種用于基于匿名主題尋址的方法,包括從客戶計算機接收點到點請求信息(408)。該方法還包括將點到點請求信息轉(zhuǎn)換成基于主題的信息。將基于主題的信息多點傳送。另外,接收對基于主題的信息(414)的響應(yīng)。該方法還包括將對基于主題的信息的響應(yīng)轉(zhuǎn)換成點到點響應(yīng)信息(416)。并且,將點到點響應(yīng)信息傳送回客戶計算機(418)。
文檔編號H04L12/58GK101540781SQ20091000555
公開日2009年9月23日 申請日期2000年12月22日 優(yōu)先權(quán)日1999年12月22日
發(fā)明者德里克·L·科利森 申請人:蒂布可軟件公司