日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢(xún)
選擇下列產(chǎn)品馬上在線(xiàn)溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
企業(yè)應(yīng)用架構(gòu)模式之標(biāo)識(shí)映射

標(biāo)識(shí)映射也是一種對(duì)象-關(guān)系行為模式,其定義如下:通過(guò)在映射中保存已加載的對(duì)象,確保每個(gè)對(duì)象只加載一次;當(dāng)要訪(fǎng)問(wèn)他們的時(shí)候,通過(guò)映射來(lái)查找它們。標(biāo)識(shí)映射的主要目的是保持一致性,而不是提高性能。

一般而言,為了達(dá)到確保每個(gè)對(duì)象只加載一次的目的,可以引入對(duì)象池來(lái)保存已加載的對(duì)象。當(dāng)客戶(hù)端需要使用對(duì)象時(shí),先根據(jù)映射鍵在對(duì)象池中查找,如果對(duì)象池中沒(méi)有,就從數(shù)據(jù)庫(kù)里加載。

資源池(resource pool)是管理與共享系統(tǒng)資源的一種緩存機(jī)制。系統(tǒng)在建立一個(gè)資源池時(shí),通常會(huì)預(yù)先創(chuàng)建一定數(shù)量的資源放入池中;當(dāng)某一客戶(hù)程序申請(qǐng)資源時(shí),資源池可將這些預(yù)先創(chuàng)建的資源分配給客戶(hù)程序;當(dāng)資源使用完畢后,資源池再將這些資源回收并可分配給其他客戶(hù)程序。在面向?qū)ο笤O(shè)計(jì)的背景下,資源池所管理的各類(lèi)資源均可抽象為對(duì)象,資源池中存放的都是資源對(duì)象的實(shí)例,故資源池亦稱(chēng)對(duì)象池(object pool)。

用對(duì)象池(也被稱(chēng)為資源池)的話(huà)需要考慮以下問(wèn)題:(1)鍵的選擇,要選擇一個(gè)對(duì)象屬性來(lái)作為其唯一標(biāo)識(shí);(2)對(duì)象池的大小與策略。

對(duì)于問(wèn)題1,通??梢圆捎糜脭?shù)據(jù)庫(kù)主鍵來(lái)作為對(duì)象標(biāo)識(shí);而對(duì)象池的大小則取決于設(shè)備的內(nèi)存狀況,對(duì)于內(nèi)存大的設(shè)備不妨將對(duì)象池設(shè)置大一點(diǎn),以保證系統(tǒng)的實(shí)時(shí)響應(yīng)性。但對(duì)于內(nèi)存較少的設(shè)備,只能在一定程度上犧牲響應(yīng)性。系統(tǒng)的內(nèi)存與速度永遠(yuǎn)是矛盾的兩個(gè)方面,設(shè)計(jì)者要做的的是根據(jù)實(shí)際情況作出權(quán)衡。

資源池的具體策略如下:

1. 資源創(chuàng)建策略

資源創(chuàng)建策略用于定制資源池創(chuàng)建新資源實(shí)例的行為。最簡(jiǎn)單的策略是只允許在建立資源池時(shí)創(chuàng)建資源,但這種策略缺乏靈活性,僅適合那些資源數(shù)目十分有限的應(yīng)用。另一種策略是為資源池設(shè)置池中資源數(shù)目的上限與下限閾值,在資源池建立后池中資源實(shí)例的數(shù)量可動(dòng)態(tài)地在限定范圍之內(nèi)浮動(dòng);當(dāng)池中無(wú)可用資源供客戶(hù)程序使用時(shí),資源池可在上限閾值限定范圍內(nèi)創(chuàng)建并返回一個(gè)新的資源實(shí)例。

2. 資源分配策略

當(dāng)客戶(hù)程序提出資源申請(qǐng)而資源池中無(wú)可用資源時(shí),資源分配策略決定了資源池的不同處理方式。最簡(jiǎn)單的策略是立即返回一個(gè)空值或報(bào)告一個(gè)異常,通知客戶(hù)程序無(wú)法分配資源。另一種策略是阻塞客戶(hù)程序并讓客戶(hù)程序進(jìn)入一個(gè)隊(duì)列中等待,直至資源池回收了新的可用資源;該策略還可配合使用超時(shí)限制,等待時(shí)間過(guò)長(zhǎng)則向客戶(hù)程序報(bào)告異常。

3. 負(fù)載均衡策略

負(fù)載均衡策略用于指示資源池如何將資源使用任務(wù)平均分配給池中的資源實(shí)例。資源池在分配資源時(shí),對(duì)資源實(shí)例的選取可采取循環(huán)策略(round-robin),即依次分配池中的所有資源實(shí)例;也可采取隨機(jī)策略,即從池中隨機(jī)地選取一個(gè)資源實(shí)例;也可采取最少使用策略,即將池中使用次數(shù)最少的資源實(shí)例分配給客戶(hù)程序;也可采取最近使用策略,即將池中剛回收的資源實(shí)例分配給客戶(hù)程序。

4. 資源恢復(fù)策略

正在使用的資源實(shí)例可能因網(wǎng)絡(luò)連接、磁盤(pán)耗盡等原因?qū)е沦Y源不再可用,倘若這些資源不加處理即回收到資源池中,還會(huì)影響下一客戶(hù)程序?qū)Y源的使用,從而降低系統(tǒng)的可靠性。資源恢復(fù)策略用于指示資源池如何發(fā)現(xiàn)資源實(shí)例的錯(cuò)誤,并設(shè)法將這些資源修復(fù)到正常狀態(tài)。

發(fā)現(xiàn)資源錯(cuò)誤時(shí)可采取兩種不同的策略:一種策略是由客戶(hù)程序發(fā)現(xiàn)資源異常后主動(dòng)通知資源池,另一種策略是由資源池主動(dòng)對(duì)回收的資源實(shí)例進(jìn)行正確性校驗(yàn)。資源池執(zhí)行的校驗(yàn)以及修復(fù)工作適宜由一個(gè)后臺(tái)監(jiān)控線(xiàn)程定期執(zhí)行,而不是在資源出現(xiàn)故障時(shí)立即執(zhí)行修復(fù)工作,以避免降低資源池處理資源請(qǐng)求的響應(yīng)性能。

5. 資源回收策略

在正常情況下,客戶(hù)程序使用資源完畢后會(huì)顯式地將資源歸還資源池。但有時(shí)可能出現(xiàn)客戶(hù)程序?qū)Y源的不合理使用(例如長(zhǎng)期占用資源而導(dǎo)致其他客戶(hù)程序無(wú)法使用),也可能因網(wǎng)絡(luò)連接中斷導(dǎo)致客戶(hù)程序無(wú)法顯式地歸還資源,這會(huì)給有限的系統(tǒng)資源造成嚴(yán)重浪費(fèi)。資源回收策略用于指示資源池在收回分配給客戶(hù)程序使用的資源時(shí)采取的行為。一種改進(jìn)的策略是由資源池控制資源實(shí)例的生存期,而不是由客戶(hù)程序直接操縱資源實(shí)例的對(duì)象引用。該策略的實(shí)現(xiàn)通常采用代理設(shè)計(jì)模式為資源對(duì)象引入包裝對(duì)象,客戶(hù)程序只對(duì)包裝對(duì)象進(jìn)行操作。倘若客戶(hù)程序在規(guī)定時(shí)間內(nèi)未操作資源對(duì)象或出現(xiàn)其他超時(shí)條件,則可將資源對(duì)象從包裝對(duì)象中剝離出來(lái),歸還資源池以供其他客戶(hù)程序使用;原客戶(hù)程序再次通過(guò)包裝對(duì)象訪(fǎng)問(wèn)資源對(duì)象時(shí),須由代理對(duì)象重新向資源池申請(qǐng)資源。有狀態(tài)資源對(duì)象的剝離比較復(fù)雜,必須保存這些資源的狀態(tài)以備包裝對(duì)象重新申請(qǐng)時(shí)恢復(fù)狀態(tài)。資源池實(shí)施這些策略時(shí),控制過(guò)程對(duì)客戶(hù)程序而言是透明的。

6. 資源清除策略

資源清除策略用于定制資源池撤銷(xiāo)資源實(shí)例的行為。當(dāng)資源池中出現(xiàn)較多空閑的資源實(shí)例時(shí),有必要清除一些資源以騰出更多內(nèi)存空間供資源池以外的其他應(yīng)用程序使用。最簡(jiǎn)單的策略是在出現(xiàn)客戶(hù)程序申請(qǐng)或釋放資源等系統(tǒng)事件時(shí)刪除多余資源,但這可能導(dǎo)致資源池的響應(yīng)性能下降。一種常見(jiàn)策略是為每一資源關(guān)聯(lián)一個(gè)時(shí)間戳,記錄該資源創(chuàng)建或最近使用的時(shí)間,從而可根據(jù)最近最少使用策略、最舊策略、超時(shí)策略等不同策略決定哪些資源將被清除。另一種策略是使用后臺(tái)監(jiān)控線(xiàn)程定期檢查資源池中的資源總數(shù)、空閑資源數(shù)量、空閑資源未被使用的時(shí)間等,以決定是否刪除部分資源實(shí)例。


分享題目:企業(yè)應(yīng)用架構(gòu)模式之標(biāo)識(shí)映射
URL鏈接:http://www.5511xx.com/article/dpdcoid.html