最佳實(shí)踐 1 :從管理模型開始。 管理模型 定義了要交換的管理信息,以及這些信息的底層語義。使用管理模型,對于確保易于發(fā)現(xiàn)、標(biāo)識和監(jiān)控托管資源的健康和可用性是必不可少的。管理模型對于確保,可以在運(yùn)行時(shí)統(tǒng)一地配置和控制應(yīng)用程序來說,同樣很重要。
應(yīng)用程序是不會孤立存在的,它們和其他應(yīng)用程序、系統(tǒng)以及網(wǎng)絡(luò)組件都有著相關(guān)性。即使主要考慮一個(gè)應(yīng)用程序時(shí),應(yīng)用程序的易管理性也必須把這些相關(guān)性考慮在內(nèi)。管理模型應(yīng)該捕捉這些相關(guān)性和關(guān)系。
創(chuàng)建一個(gè)管理模型,要求您在軟件生命周期的早期,考慮到易管理性的需求。通常,開發(fā)人員總是在事后才想起易管理性的問題。為了在構(gòu)建 SOMA 方面獲得真正的成功,您必須從一開始就考慮易管理性和管理模型。事實(shí)上,無論您使用何種技術(shù)來公開易管理性,一個(gè)優(yōu)秀的管理模型總是會為您帶來好處的。在開發(fā)管理模型的過程中,您應(yīng)該詢問一些問題。什么是托管 資源 ?什么是托管資源的 狀態(tài) ,如何去控制它?托管資源之間存在 關(guān)系 嗎?您需要跟蹤什么特定的業(yè)務(wù)或性能 量度 ?應(yīng)該公開什么樣的額外管理 屬性 和 操作 ?托管資源關(guān)心的是什么事件和消息 通知 ?
定義模型
理解這些問題的答案,能夠幫助您定義一個(gè)可以跨 IT 基礎(chǔ)架構(gòu)利用的管理模型。您還應(yīng)該從操作人員的角度考慮這個(gè)管理模型,因?yàn)椴僮魅藛T必須在部署應(yīng)用程序之后對其進(jìn)行管理。
記住,應(yīng)用程序公開的管理模型和它的內(nèi)部結(jié)構(gòu)不是一回事。前者的目標(biāo)是允許外部管理系統(tǒng)有效地監(jiān)控、配置和控制應(yīng)用程序,而后者的目標(biāo)則是實(shí)現(xiàn)業(yè)務(wù)功能。
例如,我們設(shè)想一臺 Web 應(yīng)用服務(wù)器,它允許部署多個(gè) Web 應(yīng)用程序或 Web 模塊,每個(gè) Web 模塊由一個(gè)或多個(gè) servlet 組成(參見 圖 3 中高度簡化的系統(tǒng)管理模型)。
圖 3. 管理模型
在高度簡化的系統(tǒng)管理模型中,一臺 Web 應(yīng)用服務(wù)器允許部署多個(gè) Web 應(yīng)用程序或 Web 模塊,而每個(gè) Web 模塊由一個(gè)或多個(gè) servlet 組成。
這個(gè)模型為每項(xiàng)可管理資源,都定義了狀態(tài)、通知、量度、屬性和操作。我們將利用這個(gè)過分簡化的模型,圍繞在 SOMA 中使用 JMX 實(shí)現(xiàn)易管理性,來應(yīng)用另外的最佳實(shí)踐。另外,我們還開發(fā)了 實(shí)現(xiàn)這個(gè)模型的完整源代碼 。
相關(guān)推薦:計(jì)算機(jī)等級考試二級Java經(jīng)典算法大全匯總
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |