[發明專利]使用層次數據結構節點上遞歸式事件監聽器的方法和系統在審
| 申請號: | 201480005866.X | 申請日: | 2014-01-17 |
| 公開(公告)號: | CN104969222A | 公開(公告)日: | 2015-10-07 |
| 發明(設計)人: | 菲利普·劉;維薩·卡圖里亞 | 申請(專利權)人: | 臉譜公司 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30;G06F15/16 |
| 代理公司: | 北京康信知識產權代理有限責任公司 11240 | 代理人: | 梁麗超;陳鵬 |
| 地址: | 美國加*** | 國省代碼: | 美國;US |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 使用 層次 數據結構 節點 遞歸 事件 監聽器 方法 系統 | ||
相關申請的交叉引用
本申請要求于2013年1月23日提交的美國專利申請號13/748,173的優先權,通過引用將其全部內容結合在此。
技術領域
本發明整體涉及計算機應用中的事件監聽器。更具體地,本發明涉及使用層次數據結構中的節點上的遞歸式事件監聽器。
背景技術
在與計算機相關的技術中,事件監聽器是以下元件:檢測(“監聽”)軟件對象(以下稱之為“對象”)中特定類型(或多個特定類型)的事件的發生,并且向訂戶通知事件發生。在具有處于層級的不同等級(level)的對象的層次數據結構中,為了檢測任一對象事件的發生(諸如,創建對象、刪除對象、或者修改對象等),目前的事件監聽器技術在層次數據結構中的每個對象上注冊事件監聽器。這些技術在注冊事件監聽器時通常消耗大量的時間和內存。
例如,考慮其中社交網絡環境擁有100000個用戶(客戶端)以及包含按照代表某些用戶信息的層次數據結構組織的1億對象的服務器的情景。假定在對象上注冊事件監聽器消耗一比特內存。如果有100000個客戶端,并且100000個客戶端中的每個客戶端均希望將事件監聽器置于服務器的1億個對象的每個上,則僅僅對于注冊事件監聽器就消耗1.25兆兆位內存。可以在對象上注冊三種類型的事件監聽器:(a)對象創建;(b)對象修改;以及(c)對象的子代。因此,僅僅對于注冊事件監聽器就消耗了3.75兆兆位的內存。此外,如果客戶端針對層級中的每個對象發送單獨的注冊請求,則可能消耗大量的網絡帶寬和時間用于注冊。至少就消耗的時間、內存、以及網絡帶寬而言,目前的事件監聽器技術通常效率較低。而且,與注冊事件監聽器的當前技術相關聯的這種低效率可隨著客戶端的數目、層級中的對象的數目、或這兩者的增加而顯著上升。在分布式系統架構中,新的分布式應用或者服務以及希望消費該服務的新客戶端可能連續增加。在該分布式環境中,用于注冊事件監聽器的目前技術通常由于消耗大量的資源用于注冊事件監聽器而使整個系統的效率明顯降低。
發明內容
下面描述的是一種用于在層次數據結構中的節點上注冊遞歸式事件監聽器的技術。遞歸式事件監聽器是一種事件監聽器,其監聽在其中注冊遞歸式事件監聽器的節點中發生的事件并且還監聽在該節點的下代節點中發生的事件,而不需要在下代節點上注冊遞歸式事件監聽器或者任何其他事件監聽器。尤其在具有層次數據結構的環境方面,該技術更為有效地利用了內存和處理資源,并且不受所監控的對象數目或者請求監控的客戶端的數目的明顯不利影響。
本公開技術的實施方式包括從客戶端接收在源節點上注冊事件監聽器的請求。源節點是層級中彼此相關的多個節點中的一個并且每個節點均代表了存儲設備的邏輯分區。服務器在源節點上注冊事件監聽器并且事件監聽器被配置為向客戶端通知源節點中發生第一事件。此外,服務器確定源節點在層級中是否具有下代節點并且響應源節點在層級中具有下代節點的確定,服務器將事件監聽器設置為向客戶端通知下代節點中發生第二事件,而不需要在下代節點上注冊另一事件監聽器。
在本公開技術的至少一些實施方式中,在該節點中發生第一事件或者下代節點中發生第二事件中的至少一個時,向客戶端通知發生第一事件或者第二事件中的至少一個。
在本公開技術的至少一些實施方式中,即使向客戶端通知發生第一事件或者第二事件之后,在該節點上注冊的事件監聽器也存留。
本發明的一些實施方式具有除上述所述之外或者替代上述所述的其他的方面、元件、特征、以及步驟。在本說明書的其余部分中描述了這些潛在的附加和替換。
在涉及方法、存儲介質、以及系統的附加權利要求中具體地公開了根據本發明的實施方式,其中,在另一權利要求類別(例如,系統)中也可以要求保護在一個權利要求類別(例如,方法)中提及的任何特征。
在根據本發明的實施方式中,一種方法包括:
在計算機網絡中的計算機系統處,接收來自計算機系統中的客戶端的、在源節點上注冊事件監聽器的請求,該源節點是層級中彼此相關的多個節點中的一個,每個節點均代表了計算機系統中的存儲設備的邏輯分區;
由計算機系統中的服務器在源節點上注冊事件監聽器,其中,事件監聽器被配置為向客戶端通知源節點中發生第一事件;
由服務器確定源節點在層級中是否具有下代節點;并且
響應于源節點在層級中具有下代節點的確定,由服務器將事件監聽器設置為向客戶端通知下代節點中發生第二事件,而不需要在下代節點上注冊另一事件監聽器。
在進一步的實施方式中,該方法包括:
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于臉譜公司,未經臉譜公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201480005866.X/2.html,轉載請聲明來源鉆瓜專利網。





