TW200923785A - Method to create multiple mbeans from a factory mbean - Google Patents

Method to create multiple mbeans from a factory mbean Download PDF

Info

Publication number
TW200923785A
TW200923785A TW097137516A TW97137516A TW200923785A TW 200923785 A TW200923785 A TW 200923785A TW 097137516 A TW097137516 A TW 097137516A TW 97137516 A TW97137516 A TW 97137516A TW 200923785 A TW200923785 A TW 200923785A
Authority
TW
Taiwan
Prior art keywords
child
category
identifier
mbean
parent
Prior art date
Application number
TW097137516A
Other languages
English (en)
Inventor
James M Mcardle
Original Assignee
Ibm
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ibm filed Critical Ibm
Publication of TW200923785A publication Critical patent/TW200923785A/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4488Object-oriented
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/31Programming languages or programming paradigms

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Stored Programmes (AREA)

Description

200923785 九、發明說明: 【發明所屬之技術領域】 所主張標的物大體係關於與經管理電腦程式設計物件有 關之技術,且更具體言之,係關於與能夠產生及管理額外 Mbean之經管理javaBean(Mbean)程式設計物件有關之 術。 【先前技術】 在過去幾十年内,電腦已變得日益連接。原先,電腦為 獨立器件,每一者通常經設計及程式化以用於特定任務。 然而,很快地,將電腦組合成網路之優勢變得顯而易見。 電腦網路能夠共用資源(諸如,印表機及記憶體),且最終 甚至能夠共用或分配處理任務。舉例而言,藉由指派不同 處理器及/或電腦以搜尋資料庫之不同區段,大資料庫之 搜尋可經常被分為多個互斥任務。 隨著電腦已變得日益互連,已開發出用以使多個電腦能 夠一起工作之技術。一種此開發為JAVA®,其為原先由 alifornia之Mountain View之 Sun Micro systems公司所開發 的高級程式設計語言。JAVA®使程式設計者能夠開發獨立 於平台之程式碼。簡單地敍述,以JAVA®程式設計語言所 撰寫之程式碼係藉由在電腦上執行之java<E)虛擬機 而轉換或”解譯”為對應於特定電腦之實際電腦指令。換言 之,藉由安裝對應於特定電腦硬體及關聯作業系統之 JVM m計者可撰寫與特定硬魏作業系统無關之程 式喝。 134817.doc 200923785 除了傳統電腦之增加的連接性以外,併有計算組件之許 多器件亦已變得互連且具備JAVA®能力。實例包括網際網 路或”網頁"、電話、有線電視機上盒及有線電視、及應用 耘式用戶端及伺服器。為了有助於此等具備能力資 源之管理’已開發出java®管理擴展(JMX)。JMX為用於 在JAVA環境中管理及監視器件、應用程式及服務之標準。 JMX定義用於建置基於網頁之分散式動態且模組化之解決 方案以管理JAVA®資源及程式設計物件的管理架構、設計 型樣、應用程式設計介面(八?1)及服務。 JMX提供為表示待管理之物件之程式設計物件之 經管理bean或” Mbean”的建立及實施。每一厘〜抓具有使使 用者或程式能夠監視、管理及被通知對相應資源之特定組 態參數之改變的管理介面。舉例而言,表示應用程式之 Mbean可包括對應於應用程式之快取記憶體大小的屬性及 方法在此實例中,讀取”cacheSize"屬性將傳回應用程式 之决取^己it體大小’且寫人’’eaeheSize„屬&將更新應用程 式之快取記憶體的大小,因此改變應用程式之組態。 雖然J Μ X規格已被更新以包括在多使用者分散式環境中 之凋用,但JMX Mbean通常為獨立物件,亦即,Mbean未 經組織成與功能有關之階層。換言之,當前技術發展水平 允4終端使用|存取預定Mbean,但不使使用I能夠產生 Mbean類別,其中個別Mbean由"父代"Mbean管理且基於 經指派名稱來存取。此外,版⑽為”獨存放,,(singlet〇n)物 件。僅例項化任一特定類型之單—河心扣,且彼單一 134817.doc 200923785
Mbean不儲存任何用戶端狀態資訊。每當呼叫特定類型之 Mbean時,必須皆將用戶端狀態資訊傳遞至“心⑽。 【發明内容】 本發明提供一種用於建立唯一 Mbean類別之方法,在唯 一 Mbean類別中’ ”父代”厘心⑽產生及管理多重,,子代”河以如。 當使用者請求特定Mbean之功能性時,呼叫特定類型之 Mbean或父代Mbean。父代Mbean為工廠方法,其產生子代 Mbean來執行請纟,而非執行請纟。子代祕⑽經指派將 子代與同一父代之其他子代區分的名稱,且呼叫該父代之 處理程序具備該名稱。以此方式,呼叫處理程序可使用經 指派名稱來存取特定子RMbean以用於未來請求。 所揭示技術藉由使一或多個處理程序能夠裁剪用於唯一 功能之特定子代Mb_而擴展隱咖之功能,卜舉例而 言,第一子代Mbean可提供對一特定資料庫之存取,而第 二子代Mbean提供對不同資料庫之存取。第一Mbean及第 ::bean皆由單一父代Mbean管理。彳叫由經指派名稱所 疋連接至不同:貝料庫但在其他方面類似之兩個不同 Mbean的能力簡化働㈣管理。熟習計算技術者應瞭解, 斤揭丁技術可提供除了資料庫連接性以外之功能性。舉例 斤提ί、之功此性可為至通信通道或特定處理任 連接性。 、斤揭示技術長^供維持用戶端Mbean中之狀態資訊 的方式。人代Mbean建立子RMbean來儲存用戶端狀態資 訊,包括(例如)資料庫連接資訊。當在父代Mbean中結合 134817.doc 200923785 密鑰或子代名稱而呼叫特定方法時,方法呼叫經重定向至 儲存用戶端狀態資訊之適當子代Mbean。 此概述不意欲作為所主張標的物之全面描述,而是意欲 h供與其相關聯之功能性中之一些的簡要综述。在審杳下 列諸圖及詳細描述後’所主張標的物之其他系統、方法、 功能性、特徵及優勢對於熟習此項技術者而言便將為顯而 易見的或將變得顯而易見。 【實施方式】 當結合下列諸圖來考慮所揭示實施例之以下詳細描述 時’可獲得所主張標的物之較佳理解。 雖然特定地參考JAVA®管理擴展(JMX)標準而加以描 述,但所主張標的物可實施於任一資訊技術系統中, 其中由應用程式之多個使用者對程式設計物件之存取為所 要的。熟習計算技術者將認識到,所揭示實施例具有與除 了以下所描述之計算環境以外之各種各樣計算環境的相關 性。另外,雖然關於JAVA®管理bean(MBean)及java環境 而2以& $ ’但所主張標的物亦可適用於其他類型之經管 模、且應用程式或任一其他類型之互賴電腦邏輯,其中 建立一程式設計物件以產生及管理其他程式設計物件。換 言之’所揭示技術可適用於存在互賴電腦程式碼或使用者 或開發者需要或想要確保計算環境高度可靠之任—情形。 二外’所揭示技術之方法可實施於軟體、硬體或軟體與 八之,且口中。可使用專門邏輯來實施硬體部分;軟體部 分可儲存於記憶體中且由合適指令執行系統(諸如,微處 134817.doc 200923785 理器、個人電腦(PC)或大型電腦)執行。 在此文獻之内容中,,,記憶體”或”記錄媒體”可為含有、 健存、傳達、傳播或輸送用於由或結合指令執行系統、裝 置或器件使用之程式及/或資料的任何構件。記憶體及圮 錄媒體可為(但不限於)電子、磁性、光學、電磁或半導體 系統、裝置或器件。舉例而纟,記憶體及記錄媒體亦包括 (但不限於)下列各項:攜帶型電腦磁片、隨機存取記憶體 (趣)、唯讀記憶體(R〇M)、可抹除可程式化$讀記心 (EPROM或快閃記憶體),及攜帶型緊密光碟唯讀記憶體或 可儲存有程式及/或資料之另一合適媒體。 根據所主張標的物之-實施例係針對—種用於簡化及擴 展JAVA Mbean之可使用性的經程式化方法。如本文中所= 用之術語"經程式化方法”經定義以意謂目前所執行之一或 多個處理程序步驟;或者,經啟用以在未來時間點執行2 一或多個處理程序步驟。術語"經程式化方法,,預料三個替 代形式。第-,經程式化方法包含目前所執行之處理程序 步驟。第二,經程式化方法包含體現電腦指令之電腦可讀 媒體’電腦指令在由電腦執行時執行—或多個處理程序步 驟。最後,經程式化方法包含已由軟體、硬體、物體或其 任何組合程式化以執行一或多個處理程序步驟之電腦^ 統。應理解,術語"經程式化方法”不應被解釋為同時具有 一個以上替代形式,而是應在替代形式之最真實意義上加 以解釋’纟中在任何給定時間點,僅存在複數個替 中之一者。 ^ 134817.doc 200923785 現轉至諸圖’圖1為併有所主張標的物之計算系統架構 100之一實例的方塊圖。計算系統100包括用戶端電腦 1〇2,其包括耦接至監視器1〇6、鍵盤1〇8及滑鼠11〇之中央 處理單凡(CPU)104。監視器1〇6、鍵盤1〇8及滑鼠11〇有助 於與計异系統1〇〇及用戶端電腦1〇2之人類互動。附接至 CPU 104的為資料儲存組件112,其可併入cpu 1〇4(亦即, 内部器件),或藉由各種通常可用之連接器件(諸如(但不限 於)’通用串列匯流排(USB)埠(未圖示))而在外部附接至 CPU 104。 資料儲存器112經說明為儲存若干例示性Java管理束或 ’’Mbean",包括第一 Mbean或"Mbean l” 114、第二 Mbean 或 Mbean—1A" 118及第三 Mbean 或"Mbean一1B" 120。應注 意’典型應用程式或系統可包括許多Mbean,但為了簡單 起見’僅展示三個。亦儲存於資料儲存器112上的為作業 系統(OS)122及 JAVA執行引擎(JXE)124。結合 Mbean_l 114 而儲存的為子代表(child table)或"Child—Table_l” 116。雖 然經說明為Mbean_l 114之一部分,但Child_Table_l 116 可為獨立實體,其有助於與其他父代Mbean(未圖示)相關 聯(除了 Mbean_l 114之子代Mbean以外)之子代Mbean之建 立及管理。結合Mbean_lA 118及Mbean_lB 120而儲存的 分別為用戶端狀態資訊物件(CSIO) 119及121。 在以下描述中,Mbean_l 114、Child_Table_l 116、 Mbean_lA 118、CSIO一ΙΑ 119、Mbean lB 120及 CSIO—1B 121為根據所主張標的物而建立及管理之物件。Mbean_l 1348l7.doc -10- 200923785 114 為父代 Mbean,且 Mbean_lA 118 及 Mbean_lB 120 為 Mbean_l 114 之子代 Mbean°Child_Table—l 116 由 Mbean 1 114用於Mbean_lA 118及Mbean一IB 120之建立及管理。 Mbean—IA 118及Mbean_lB 120為同一類型之物件,但為 不同例項(instantiation) ’ 因此使 Mbean_lA 118 及
Mbean_lB 120 各自能夠分別在 CSI0_1 A 119 及 CSIO 1B
1 21中儲存其自己的用戶端狀態資訊。在以下實例中用 戶端狀態資訊包括與其各別名稱及連接有關之資料。所主 張標的物能夠儲存許多其他類型之用戶端狀態資訊;連接 資訊僅用作一實例。以下結合圖2至圖8而更詳細地描述 Mbean_l 114 > Child Table l 116 ' Mbean_lA 118 ' CSI0_1A 119、Mbean_lB 120、CSI0_1B 121、〇S 122及 JXE 124。 用戶端電腦1 02連接至網際網路1 28,網際網路128亦連 接至伺服器電腦13 〇。雖然在此實例中,用戶端電腦j 〇2與 伺服器130經由網際網路128而通信地耦接,但其亦可經由 任何數目之通信媒體(諸如(但不限於),區域網路(LAN)(未 圖示)及直接有線連接)而耦接。 圖2為在由用戶端電腦102(圖1}所表示之計算平台或硬 體上執行之計算系統架構140的方塊圖。其他可能平台包 括(但不限於)諸如伺服器13〇(圖1)、電視視訊轉接器、服 務閘道器、電纜數據機、消費型電子器件、個人電腦 (PC)、工業電腦及汽車之計算平台。〇s 122(圖1)管理用戶 端電腦1〇2之資源。支援所主張標的物之三個0S的實例包 括Linux、Macintosh及各種版本之Windows,其全部以及 1348l7.doc 200923785 其他者應為熟習計算技術者所熟悉。 如以上所提到,在此實例中’ OS 122支援JXE 124(圖 1),且JXE 124實施jAVA®程式設計語言,JAVA®程式設計 語言為 California 之 Santa Clara 之 Sim Microsystems公司的 產品。JXE 1 24包括執行jAVA®程式之JAVA®執行時間引擎 (JRE)(未圖示),JAVA®程式經編譯為由JXE i24iJRE所解 譯之位元組碼,而非經編譯為本機機器碼。以此方式,可 撰寫特定JAVA®程式以在任一硬體平台ι〇2及包括相應 JXE(如,JXE 124)之 OS 122 上執行。 JXE 124提供用於Mbean之執行環境,在此實例中Mbean 包括由JAVA®管理擴展(JMX)142所管理之Mbean_l 114(圖 1)、Mbean_ 1 A 11 8(圖 1)及 Mbean_l B 120。在以下描述 中’ Mbean 114、118及120用作由根據所主張標的物之 JMX 142所管理之Mbean的實例。雖然Mbean 114、118及 120經說明為常駐於硬體平台ι〇2上,但每一者可位於不同 平台上’例如,儲存於與伺服器13〇(圖^相關聯之記憶體 (未圖示)中及在伺服器130上執行。 圖3為所主張標的物之實施中所使用之childMbeanTableObject (CMTO)150記憶體物件150的一實例。CMTO 150為以上結 合圖1及圖2而介紹之child_table—1 116之一可能實施例的 實例。CMTO記憶體物件150包括:標題段152,其僅敍述 物件 200之名稱,亦即,”childMbeanTableObject";屬性 段154,其含有與CMTO記憶體物件150相關聯之記憶體元 件或屬性;及方法段1 56,其包括可結合CMTO記憶體物件 134817.doc -12- 200923785 1 5 0而執行之功能或方法。應注意,所描述之屬性及方法 僅用於說明之目的。額外及/或不同屬性及方法可用以實 施所主張標的物。 屬性段154包括"cmtoID"屬性158及,,chUdMbeanID"屬性 16〇。在此實例中,物件15〇之例項結合河心抓―丨丨14(圖工 及圖2)而經儲存為chi丨d—116。Cmt〇iD屬性158為含 有對物件I50之特定執行個體之參考的類型CMTObjectID 變數。物件150之每一執行個體具有屬性158之唯一值,其 允許唯地識別母一執行個體。childMbeanID屬性1 60為 儲存對根據所揭示技術而建立之子代Mbean之例項之參考 的類型向量變數。Mbean_1A 118及1^以11一1B 12〇為由屬 I1 生160所參考之子代Mbean的實例。以下結合圖4至圖$而更 詳細地描述屬性158及160兩者。 物件150之方法段156包括兩個例示性功能或方法,亦 即’ AddC〇nnection方法162及丁⑽拙⑽她则加方法164。 為了簡單起見而僅說明兩個方法。熟習程式設計技術者應 瞭解,諸如物件!50之物件將通常包括許多額外方法,包 括(但不限於)構造器、破壞器,及用以設定及得到各種屬 ! 生之值的方法。亦應理解,CMT〇記憶體物件15〇僅為可用 以實施所主張標的物之記憶體物件的一實例。可使用具有 更乂、更多及/或不同屬性及方法之其他記憶體物件。此 卜存在與使用物件150不同之許多方式來實施所主張標 的物之功能性及資料料。舉例而t,所主張標的物可藉 由電腦程式而結合關連式資料庫來實施。 I348l7.doc 200923785 在設定Mbean處理程序200(見圖5)之建立Mbean區塊262 期間呼叫AddConnection方法162。藉由為類型cSIObject變 數之一參數(csiObject參數)來呼叫方法162。以下結合圖4 而更詳細地描述類型CSIObject變數。簡單地敍述,當使 用者需要建立至特定資料庫(未圖示)之新連接時呼叫方法 162。csiObject參數中之資訊提供為使父代Mbean(諸如, Mbean—1 114(圖1及圖2))建立新子代Mbean(諸如, Mbean—1A 118(圖 1及圖 2)或Mbean一IB 120(圖 1及圖 2))、建 立至^日疋 > 料庫之連接且將對應於呼叫處理程序之用戶端 狀態資訊提供至新子代Mbean所必要的資訊。 在呼叫Mbean處理程序250(見圖6)之呼叫子代Mbean區塊 270期間呼叫TransmitStatement方法164。藉由兩個(2個)參 數來呼叫方法164 :類型ChildMbeanID之MbeanID參數及 類型 String 之 sqlStatement 參數。MbeanID 參數使 Mbean 1 114能夠識別將請求傳輸至之適當子代Mbean,該請求體現 於sqlStatement參數中。應注意,沒有必要傳輸的為用戶 端狀態資訊或與將查詢定向至之特定資料庫有關的任何資 訊。Mbean—1 114藉由MbeanID參數來識別適當子代 Mbean,且當藉由AddConnection方法1 62來建立子代時, 將用戶端狀態資訊傳輸至子代》Sqlstatement參數儲存結 構化查詢語言(SQL)表達式,其傳輸至與c〇nnecU〇niD屬性 1 82(見圖4)相關聯之資料庫以期待回覆。 應注意,資料連接性及查詢僅為用以使用所揭示技術之 可能方式的一實例。熟習計算技術者應瞭解應受益於所主 134817.doc -14- 200923785 張標的物之應用的許多其他應用。 圖4為所主張標的物之一實施中所使用之
ClientStatelnformationObject(CSIO)記憶體物件 170的一實 例。CSIO 170為以上結合圖1而介紹之CSI0—1A 119及CSI0_1B 121之一實施例的實例。CSIO 170包括:標題段172,其僅敍 述物件 200之名稱’亦即 ’ "ChildStatelnformationObject"; 屬性段1 74,其含有與CSIO 170相關聯之記憶體元件或屬 性,及方法·^又17 6 ’其包括可結合c SIΟ 1 7 0而執行之功能 或方法。應注意,所描述之屬性及方法僅用於說明之目 的。額外及/或不同屬性及方法可用以實施所主張標的 物。 CSIO 170之屬性段 m 包括 csi〇iD屬性 178、childMbeanID 屬性 180、connectionID 屬性 182、serverName 屬性 184、 portNumber屬性 186、databaseAlias屬性 188及 userName屬 性190。csioID屬性178為含有對物件17〇之特定執行個體之 參考的類型CSIObjectID變數。物件170之每一執行個體具 有屬性178之唯一值,其允許唯一地識別每一執行個體。 為類型CSIObjectID變數之childMbeanID屬性180識別與 物件1 70相關聯之特定Mbean。為類型MbeanID變數之 connectionID屬性1 82識別與相應子代Mbean相關聯之特定 連接。皆為類型String變數之serverName屬性184、 portNumbei·屬性 186、databaseAlias屬性 188及 userNama 性190儲存與關聯連接有關之資訊,包括為建立連接所需 要之資料庫名稱及特定資訊。 134817.doc 15 200923785 物件1 70之方法段176包括兩個例示性功能或方法,亦 即 ’ ConnectToDatabase 方法 192 及 TransmitQuery 方法 194。ConnectToDatabase方法192為在呼叫Mbean處理程序 250(見圖6)之建立Mbean區塊262期間所呼叫之功能,其傳 回類型ConnectionID值。方法192使用儲存於屬性184、
186、188及190中之資訊來建立至所參考資料庫之連接。 所傳回之值儲存於connectionID屬性182中。TransmitQuery 方法194為傳回類型String值之功能。傳回值表示來自屬性 182中所參考之資料庫對方法194之參數(亦即,叫朌伽咖价’ 其為類型String變數)中所儲存之查詢的回覆。 為了簡單起見而僅說明兩個方法。熟習程式設計技術者 應瞭解,諸如物件170之物件將通常包括許多額外方法, 包括(但不限於)構造器、破壞器,及用以設定及得到各種 屬性之值的方法。亦應理解,CSI〇 m僅為可用以實施所 ;張標的物之記憶體物件的一實例。可使用具有更少、更 多及/或不同屬性及方法之其他記憶體物件。此外,存在 與使用物件17G不同之許多方式來實㈣主張㈣物之功 及貝料儲存。舉例而言,所主張標的物可藉由電腦程 式而結合關連式資料庫來實施。 =5為所主張標的物之實施之—實例之設定勵⑽處理 程序咖的流程圖。在此實例巾, 儲存器112(圖1)中且在cpu 劲〜 ^ 牡〗04(圖〗)之處理器(未圖示)上 仃’兩者皆併入用戶端系統102(圖”。當 00、程式庫及任何其他必要程式碼可儲存於與資料= i34817.doc \6 200923785 器112不同之適當位置中。舉例而言,處理程序200可經由 網際網路128(圖1)而自伺服器130(圖1)擷取任何必要程式 碼。 處理程序200開始於"開始設定Mbean"區塊202,且立即 進行至"匯入程式庫"區塊204。在區塊204期間,處理程序 2〇〇自資料儲存器112擷取可為實施所要功能性所必要之任 何必要程式庫模組(未圖示)。在"載入Mbean類別,,區塊2〇6 期間,處理程序200自資料儲存器112擷取適當類別定義以 定義父代Mbean之例項,在此實例中,父代Mbean之例項 為Mbean—1 1丨4(圖1及圖2)之例項。在,,建立Mbean,,區塊 208期間,處理程序200藉由配置記憶體以用於在區塊2〇6 期間所擷取之類別定義及在區塊2〇4期間所擷取之程式庫 來建立 Mbean_l 114。 在"建立子代表"區塊期間,處理程序2〇〇建立子代表, 在此實例中,其為Child_table_l 116(圖1及圖2)。子代表之 結構之一實例為以上結合圖3而描述之childTableObject 150。一旦建ichnd—tabiej,處理程序2〇〇就進行至”結束 設定Mbean”區塊219,在區塊219中,處理程序2〇〇完成。 若在與區塊204、206、208及210相關聯之處理期間出現 錯誤(例如,記憶體或必要程式碼之特定片段不可用),則 產生非同步中斷212。在彼情況下,處理程序2〇〇進行 至’’捕獲例外"區塊214〇在區塊214期間,處理程序2〇〇停 止任何當前執行之處理且進行至轉變點A。一旦已執行與 例外之產生相關聯的處理,處理程序2〇〇就經由傳輸點B而 I34817.doc 200923785 返回至結束設定區塊219,在區塊219中,處理程序200完 成。以下結合圖8而更詳細地描述轉變點A、B及在點A與B 之間發生的例外處理。 圖6為結合圖5而介紹之實施中所使用之呼叫Mbean處理 程序250的流程圖。在此實例中,處理程序25〇儲存於資料 儲存器112(圖1)中且在CPU 1〇4(圖1)之處理器(未圖示)上 執行,兩者皆併入用戶端系統1〇2(圖1)。處理程序25〇表示 一旦Mbean_l 114(圖1及圖2)已由以上結合圖4而描述之設 定]^^6&11處理程序200例項化就由]^^6&11_1114所執行之處 理。 處理程序250開始於”開始呼叫Mbean”區塊252,且立即 進行至"等待呼叫"區塊254。在區塊254期間,處理程序 2 5 0處於暫時中止狀態,等到直至接收到對存取子代
Mbean(諸如,Mbean_1A 118(圖 1 及圖 2)或 Mbean—1B 120(圖1及圖2))之請求為止。一旦接收到請求,處理程序 250就進行至"接收呼叫I,區塊256,且接著進行至”剖析呼 叫’’區塊258。在區塊258期間,處理程序250基於與特定呼 叫一起被包括之資訊來進行如何藉由執行來處理之判定。
在"新Mbean ?"區塊260期間,處理程序250判定在區塊 2 5 6期間所接收且在區塊2 5 8期間所剖析之呼叫是否表示對 存取尚未存在之子代Mbean之請求。若如此,則處理程序 250進行至”建立Mbean”區塊262,在區塊262期間,建立經 請求子代Mbean。一旦在區塊262期間建立新Mbean,則處 理程序250就在”指派ID”區塊264期間建立childMbeaniD 134817.doc •18· 200923785 1 80(圖4)以唯一地識別Mbean。在”建立表項"區塊266期 間,處理程序將與新建立之Mbean有關的資訊添加至在設 定Mbean處理程序200之區塊210(圖5)期間所建立之
ChildMbeanTableObject 150,在此實例中,ChildMbeanTableObject 150為 child_table_l 116(圖 1及圖 2)。 若在區塊260期間,處理程序250判定在區塊258期間所 接收之呼叫與已經存在之Mbean相關聯,則控制進行至"識 別子代Mbean"區塊268。在區塊268期間,處理程序250基 於child—table一1 11 6中所儲存之資訊而使所接收呼叫與特 定子代Mbean相關。 在區塊268及區塊266之後,控制進行至"啤叫子代 Mbean”區塊270。在區塊270期間,處理程序250進行對子 代Mbean之呼叫,子代Mbean在區塊268期間經識別或在區 塊262期間經例項化。應注意,若在區塊256期間所接收之 呼叫僅為對於子代Mbean之建立的請求,則處理程序250通 過區塊270而不進行呼叫。一旦已呼叫適當]^1)^11(或若在 區塊256期間所接收之呼叫為對建立子代Mbean之請求,則 不呼叫),處理程序250就進行至傳輸結果區塊272,在區 塊272期間’處理程序250將當前處理之結果傳輸至起始在 區塊256期間所接收之呼叫的處理程序。結果可包括··如 由以下結合圖7而描述之執行查詢處理程序3〇〇所產生之查 詢結果;在區塊264期間所產生之childMbeanID的傳回, 使付呼叫處理程序可指定在任何未來呼叫中之經建立 Mbean ;或兩者。處理程序25〇接著返回至等待呼叫區塊 134817.doc 19 200923785 254,且處理如以上所描述而繼續。 處理程序250就經設計以只要114正在執行中就 連續地操作。結果,由使用者明確地終止或由於另一有關 處理程序而自動地終止Mbean—! 114,產生非同步中斷 r 274。自中斷274,處理程序25〇進行至”清除,,區塊,在 區塊276期間,執行任何必要功能以終止Mbean—丨。清 除處理程序之兩個實例為任何有關子代Mbeans之終止及; 能已在建立及執行處理程序25〇期間配置之任一記憶體之 釋放。最後,處理程序250進行至"結束呼叫Mbean"區塊 279 ’在區塊279中,處理程序250完成。 圖7為結合圖6之處理程序25〇而使用之執行查詢處理程 序300的流程圖。在此實例中,處理程序3〇〇儲存於資料儲 存益112(圖1)且在CPU 104(圖1)之處理器(未圖示)上執 行,兩者皆併入用戶端系統⑺以圖丨)。處理程序3〇〇使特定 呼叫與諸如Mbean_l 114(圖1及圖2)之父RMbean相關。 處理程序300開始於"開始執行查詢"區塊3〇2,且立即進 行至付到MbeanID及表達式"區塊3〇4。在區塊3〇4期間, Mbean—1 114經由處理程序300結合表示對於來自特定資料 庫之資料之凊求的SQL表達式而接收chiidMbeanID(諸如, 儲存於childMbean屬性180(圖4)中之childMbeanID)。如以 上結合圖4及圖6所解釋’ childMbeanID唯一地識別特定子 代Mbean,且因此,在此實例中,唯一地識別至特定資料 庫之連接。在”識別Mbean"區塊306期間,處理程序3〇〇使 在區塊304期間所接收之childMbeanID與特定子代Mbean相 134817.doc -20- 200923785 關在此實例中,特定子代118(圖α 圖 2)。 _ 在傳輸表達式”區塊3〇8期間,將在區塊3〇4期間所接收 之SQL表達式傳輸至在區塊3〇6期間所識別之Μΐ^&η_ιΑ 118在接收結果"區塊3 1 〇期間,處理程序3〇〇接收回應 於在區塊308期間所傳輸之查詢而來自Mbeanj 118之回 覆在處理結果"區塊3 12期間,處理程序3 〇〇評估在區塊 3 10。期間所接收之回覆,亦即,判定回覆為真實回覆還是 錯誤訊息,且相應地起作用。在"傳輸結果"區塊314期 間,處理程序300將在區塊31〇期間所接收之回覆或在區塊 3 12期間所產生之錯誤訊息傳輸至引發在區塊3 期間所接 收之表達式的處理程序。最後,處理程序3〇〇進行至"結束 執行查詢”區塊319,在區塊319中,處理程序300完成。 注意,所揭示技術之處理使處理程序在此實例中能夠建 立夕個為料庫連接且具有由Mbean_ 1 114所管理之彼等連 接。此極大地簡化將另外為多重Mbean之管理的處理。熟 習計算技術者應瞭解,所揭示技術具有在與資料庫連接性 不同之許多領域中之應用。 圖8為結合圖5之設定Mbean處理程序而使用之處置例外 處理程序350的流程圖。在此實例中,處理程序35〇儲存於 資料儲存器112(圖1)中且在cpu 104(圖1)之處理器(未圖 示)上執行,兩者皆併入用戶端系統1〇2(圖1}。雖然關於與 設定Mbean處理程序200(圖5)相關聯之例外處置功能性而 描述處理程序350 ’但與所揭示技術相關聯之任何處理程 134817.doc -21 · 200923785 序(經描述或未經描述)將具有類似例外處置能力。 處理程序35G係自處理程序2〇〇經由轉變點A(圖5)而進入 尸進行至接收例外”區塊352。在區塊352期間,處理 ♦序350接收在處理程序2〇〇之捕獲例外區塊川(圖5)期間 所捕獲之例外。纟"列訊息"區塊354期$,將適當錯誤 訊息傳輸至起始處理程序·之使用者或處理程序。此 ,外’訊息可顯示於用戶端系統⑽之監視||1()6(圖1}上。在 列印歷程(PdntTrace)"區塊356期間,處理程序35〇記錄執 盯歷程檔案,使得在必要時,起始處理程序之使用者 或處理程序I夠判疋例外之原因。最後,處理程序進 入轉變點B(圖5) ’其將控制返回至如以上結合圖$而描述 之結束設定Mbean區塊219。 雖然所主張標的物已參考其特定實施例而加以展示及描 述,但熟習此項技術者應理解,可在不脫離所主張標的物 之精神及範疇的情況下在其中進行形式及細節上之前述及 其他改變,包括(但不限於)以相同或不同次序而執行之額 外、更少或經修改元件及/或額外、更少或經修改區塊。 【圖式簡單說明】 圖1為使用所主張標的物之計算系統之一實例的方塊 圖。 圖2為在圖1之計算系統上執行且支援所主張標的物之技 術之電腦架構之一實例的方塊圖。 圖3為所主張標的物之實施之一實例中所使用之 CMldMbeanTableObject(CMTO)記憶體物件的一實例。 134817.doc -22- 200923785 圖4為所主張標的物之實施之一實例中所使用之
ChemStateInformatic)n〇bjeci(CSi〇)記憶體物件的一實例。 。圖5為所主張標的物之實施之—實例之設咖處理 程序的流程圖。 圖6為結合圖5而介紹之實施中所使用之呼叫Mb_處理 程序的流程圖。
圖7為結合圖6之處理程序而使用之執行查詢處理輕 流程圖。 J ® 8為結合圖5之設定驗⑽處理程序而使用之處置 處理程序的流程圖。 【主要元件符號說明】 100 計算系統架構/計算系統 102 用戶端電腦/硬體平台/用戶端系統 104 中央處理單元(CPU) 106 監視器 108 鍵盤 110 滑鼠 112 資料儲存器 114 Mbean—1 116 Child_Table_l 118 Mbean_l A 119 用戶端狀態資訊物件(CSI0)/CSI0_1A 120 MbeanlB 121 用戶端狀態資訊物件(CSIO)/CSIO_lB 134817.doc -23- 200923785 122 124 128 130 140 142 150 152 154 156 158 160 162 164 170 172 174 176 178 180 182 184 186 188 作業系統(OS) JAVA執行引擎(JXE) 網際網路 伺服器電腦/伺服器 計算系統架構 JAVA®管理擴展(JMX)
ChildMbeanTableObject(CMTO)記憶體物件 標題段 屬性段 方法段 ” cmtoID”屬性 "childMbeanlD,,屬性 AddConnection 方法 TransmitStatement 方法
ClientStatelnformationObject(CSIO)記憶體物件 標題段 屬性段 方法段 csioID屬性 childMbeanID 屬性 connectionID 屬性 serverName 屬性 portNumber 屬性 databaseAlias 屬性 134817.doc -24- 200923785 1 90 userName 屬性 192 ConnectToDatabase 方法 1 94 TransmitQuery 方法 -25 - 134817.doc

Claims (1)

  1. 200923785 十、申請專利範圍: 1. 一種方法,其包含: 基於一父代類別物件描述來配置用於一父代類別物件 之記憶體; 藉由該父代類別物件基於一子代類別物件描述來配置 用於一第一子代類別物件之記憶體; - 向該第一子代類別物件指派一與對應於一第二子代類 別物件之一第二識別符相比為唯一之第一識別符,其中 該第二子代類別物件亦藉由該父代類別物件基於該;代 類別物件描述來配置;及 ,儲存該第-識別符,使得該第—子代類別物件可與該 第二子代類別物件區分。 2·如請求項1之方法’其進一步包含: 將用戶端狀態資訊傳遞至該第一子代類別物件;及 結合該第一子代類別物件而儲存該用戶端狀態資訊。 3 _如請求項1之方法,其中 、用戶鈿狀態資訊為對應於一 關聯用戶端斑一 ^ ^ pa 尸竭/、胃科庫之間的一連接之資訊。 4.如請求項丨之方法,其進一步包含: 呼叫該父代類別物件; 結合對該父代類別物件之兮 千之5亥啤叫而將一識別符傳遞至 或父代類別物件; 使該經傳遞識別符與該第— 關;及 料符或该第二識別符相 分別基於該經傳遞識別符 才疋與該弟一識別符還是與該 134817.doc 200923785 第二識別符相關來呼 代類別物件。 亥第一子代類別物件或該第二子 5 ·如靖求項1之方法,且 類別物件及該第-I广父代類別物件、該第一子代 件。 —代類別物件為JAVA®程式設計物 6.如請求項丨之方法,且 一笛次 ^ 第一子代類別物件提供一至 第—資料庫之連接, 楚 μ第一子代類別物件提供一至 -第l1之方法其中該第"'子代類別物件提供一至 第^信通道之連接,且該第二類別物件提供一至― 弟一通信通道之連接。 8. 一種系統,其包含: 一父代類別物件描述; 一子代類別物件描述; 用於藉由一根據該父代類別物件描述而產生之父代類 別物件基於該子代類別物件描述來產生一子代類別物件 之邏輯; 一第—識別符’其對應於該第一子代類別物件;及 〃用於基於該第-識別符而將該第—子代類別物件與一 第二子代類別物件區分之邏輯,其中該第二子代類別、物 件係基於該子代類別物件描述且由該父代類別物件 生。 9.如請求項8之系統,其進一步包含: 用戶端狀態資訊,其對應於一產生該父代類別物件之 I348I7.doc 200923785 用戶端; 用於將該用戶端狀態資訊傳遞至該第—子代類別物件 之邏輯;及 用於結合該第一子代類別物件而储存該用戶端狀態資 訊之邏輯。 ίο.如請求項9之系統,其中該用戶端狀態資訊為對應於該 用戶端與一資料庫之間的一連接之資訊。 11·如請求項8之系統,其進一步包含: 用於呼叫該父代類別物件之邏輯; 用於、、、„ Q對Μ代類別物件之該呼叫而將—識別符傳 遞至該父代類別物件之邏輯; 用於使該經傳遞識別符盥第— 相關之邏輯;及 +-亥第_付或第二識別符 與=分別基於該經傳遞識別符是與該第-識別符還是 與=二識別符相關來呼叫該第一子代類別物件或該第 一子代類別物件之邏輯。 12.如請求項8之系統,复 、〒該乂代類別物件、該第—不代 類別物件及嗲筮_ 2 ^ 千代 件。 ^弟一子代類別物件為java®程式設計物 13 ·如請求項8之系统, 一 、’ “中該第一子代類別物件提供一至 一第一貧料庫之违蛀 一鬼一欠 迷筏,且該第二子代類別物件提供一至 一第一貝料庫之連接。 14.如請求項8之系统,甘 、死其中該第一子代類別物件提供一至 一第一通信通道之查 、 1遷接,且該第二類別物件提供一至一 134817.doc 200923785 第 通信通道之連接。 ^一種電腦程式設計產品,其包含: 一記憶體; 儲存於該記憶體上以用於在一處理器 :體父物件描述來配置用於1代類 憶體之邏輯; T < ^存於該記憶體上㈣於在該處理^上執行的用 ㈣父代_物件基於—子代類別物件描述來配置用於 一第一子代類別物件之記憶體之邏輯; 儲存於該記憶體上以用於在該處理器上執行的用㈣ 該第一子代類別物件指派一與對應於— 弟一子代類別物 -第一識別符相比為唯一之第一識別符之邏輯,其 中該第二子代類別物件亦藉由該父代類別物件基於該子 代類別物件描述來配置;及 儲存於該記憶體上以用於在該處理器上執行的用於儲 存該第一識別符以使得該第一子代類別物件可與該第二 子代類別物件區分之邏輯。 16. 如請求項15之電腦程式設計產品,其進—步包含·· 儲存於該記憶體上以用於在該處理器上執行的用於將 用戶端狀態資訊傳遞至該第一子代類別物件之邏輯;及 儲存於該記憶體上以用於在該處理器上執行的用於結 合該第一 +4戈類別4勿件而儲存該用彳端狀態資訊之邏 輯。 17. 如請求項16之電腦程式設計產品,其中該用戶端狀態資 134817.doc 200923785 連接之資 §fl為對應於一關聯用戶端與一資料庫之間的一 訊。 I8.如知求項15之電腦程式設計產品,其進—步包含. 儲存於該記憶體上以用於在該處理器上執 八1丁的用於呼 叫該父代類別物件之邏輯; 儲存於該記憶體上以用於在該處理器上執 人机斗、、 钒仃的用於結 口對忒父代類別物件之該呼叫而將一識別符傳遞至▲、 代類別物件之邏輯; °衾父 f \ 儲存於該記憶體上以用於在該處理器上執行的用於使 該經傳遞識別符與該第—識別符或該I識 關 邏輯;及 關之 儲存於該記憶體上以用於在該處理器上執行的用於八 別基於該經傳遞識別符是與該第―識別符還是與該第: 識別符相關來呼叫該第-子代類別物件或該第二‘代: 別物件之邏輯。 气類 其中該父代類別物 二子代類別物件為 19.如請求項15之電腦程式設計產品 件、該第一子代類別物件及該第 JAVA®程式設計物件。 其中該第一子代類別 ’且該第二子代類別 2〇·如請求項15之電腦程式設計產品, 物件提供-至一第一資料庫之連接 物件提供-至一第^資料庫之連接 1348l7.doc
TW097137516A 2007-11-20 2008-09-30 Method to create multiple mbeans from a factory mbean TW200923785A (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US11/943,220 US7958145B2 (en) 2007-11-20 2007-11-20 Creating multiple MBeans from a factory MBean

Publications (1)

Publication Number Publication Date
TW200923785A true TW200923785A (en) 2009-06-01

Family

ID=40364287

Family Applications (1)

Application Number Title Priority Date Filing Date
TW097137516A TW200923785A (en) 2007-11-20 2008-09-30 Method to create multiple mbeans from a factory mbean

Country Status (5)

Country Link
US (2) US7958145B2 (zh)
JP (1) JP5209058B2 (zh)
KR (1) KR20100089831A (zh)
TW (1) TW200923785A (zh)
WO (1) WO2009065866A1 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5396979B2 (ja) * 2009-04-10 2014-01-22 日本電気株式会社 ソフトウェア開発支援装置、システム、ソフトウェア開発支援装置の機能拡張方法、及びプログラム
US8239709B2 (en) * 2009-08-12 2012-08-07 Apple Inc. Managing extrinsic processes
JP5348413B2 (ja) * 2009-09-01 2013-11-20 日本電気株式会社 アプリケーションサーバ、オブジェクト管理方法およびオブジェクト管理プログラム
CN111190592B (zh) * 2018-11-15 2022-06-21 武汉斗鱼网络科技有限公司 一种页面创建方法、存储介质、电子设备及系统

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6061721A (en) * 1997-10-06 2000-05-09 Sun Microsystems, Inc. Bean-based management system
JP3737658B2 (ja) * 1999-11-22 2006-01-18 株式会社東芝 クライアントサーバシステム
US6938260B1 (en) 2000-07-14 2005-08-30 International Business Machines Corporation Complex data navigation, manipulation and presentation support for visualage Java
JP2003020299A (ja) 2001-07-06 2003-01-24 Shin Etsu Chem Co Ltd 酸化物ガーネット単結晶
US6950825B2 (en) 2002-05-30 2005-09-27 International Business Machines Corporation Fine grained role-based access to system resources
JP3862652B2 (ja) 2002-12-10 2006-12-27 キヤノン株式会社 印刷制御方法及び情報処理装置
US7080126B2 (en) 2003-02-28 2006-07-18 Bea Systems, Inc. Computer program product for performing resource pool maintenance by maintaining resources in several deques
JP2004295463A (ja) * 2003-03-27 2004-10-21 Nippon Telegr & Teleph Corp <Ntt> アプリケーション管理システム及びその方法
US20050246453A1 (en) 2004-04-30 2005-11-03 Microsoft Corporation Providing direct access to hardware from a virtual environment
JP2006127461A (ja) 2004-09-29 2006-05-18 Sony Corp 情報処理装置、通信処理方法、並びにコンピュータ・プログラム
EP1684177A1 (fr) * 2005-01-25 2006-07-26 France Telecom Procédé et systeme d'administration dans un environement JMX comprenant une application d'administration et des systemes logiciels à administrer
JPWO2006100772A1 (ja) * 2005-03-23 2008-08-28 株式会社サイオ 計算装置
CN101356783B (zh) 2006-01-12 2014-06-04 博通以色列研发公司 虚拟化网络环境中具有i/o共享的协议卸载和直接i/o的方法和系统
JP4023508B2 (ja) * 2006-03-28 2007-12-19 松下電工株式会社 ネットワークシステム
US7904548B2 (en) * 2006-03-31 2011-03-08 Oracle International Corporation System and method of monitoring an enterprise wide RFID deployment using standards based JMX technology
US8407704B2 (en) * 2006-09-26 2013-03-26 International Business Machines Corporation Multi-level memory architecture using data structures for storing access rights and performing address translation

Also Published As

Publication number Publication date
WO2009065866A1 (en) 2009-05-28
KR20100089831A (ko) 2010-08-12
JP2011504268A (ja) 2011-02-03
US7958145B2 (en) 2011-06-07
US20090132577A1 (en) 2009-05-21
US20110238702A1 (en) 2011-09-29
JP5209058B2 (ja) 2013-06-12
US8676842B2 (en) 2014-03-18

Similar Documents

Publication Publication Date Title
JP5026415B2 (ja) データセントリックワークフロー
JP4851138B2 (ja) メディア転送プロトコルに対する選択可能な拡張を生成するシステムおよび方法
US8473896B2 (en) Computer software development incorporating core and compound services
JP5420139B2 (ja) ダイナミック・サービス・サロゲート
JP5216093B2 (ja) スクリプティング環境および他のプログラミング環境からデバイスによってホストされるサービスへのアクセス
JP2006252536A (ja) レガシーコンポーネントのための動的サービスの生成
CA2298003A1 (en) Scripting task-level user interfaces
US20030055862A1 (en) Methods, systems, and articles of manufacture for managing systems using operation objects
TWI313819B (en) A system and method for building component applications using metadata defined mapping between message and data domains
JP2005506618A (ja) システム統合のためのアプリケーションビューコンポーネント
TW200923785A (en) Method to create multiple mbeans from a factory mbean
Gannod et al. An architecture-based approach for synthesizing and integrating adapters for legacy software
US7584302B1 (en) Business integration component for containers
Srinivasmurthy et al. Web2exchange: A model-based service transformation and integration environment
US8082553B2 (en) Client management of java management extensions (JMX) Mbean state
Schmidt et al. Component‐oriented application construction for a Web service‐based Grid
JP2003076563A (ja) 分散オブジェクトミドルウェア連携方法及びプログラムを記録した記録媒体並びにプログラム
Schmidt et al. Applying a Component Model to Grid Application Services
Moreno et al. Modelling interactions between Web applications and third-party systems
JP3741561B2 (ja) エージェント簡易作成装置及びエージェント簡易作成方法
AU2006200734B2 (en) Pipeline architecture for use with net-centric application program architectures
Cosmina et al. Spring Advanced Topics
JP2005266928A (ja) 情報処理システム、情報処理装置及びそれらの制御方法、コンピュータ可読メモリ
Pruyne et al. A Model-based Approach to Service-Oriented Computing
Cooper Deploying Ruby Applications and Libraries