日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

《面向模式的软件体系结构3-资源管理模式》读书笔记(1)--- Lookup模式

發(fā)布時間:2024/4/14 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 《面向模式的软件体系结构3-资源管理模式》读书笔记(1)--- Lookup模式 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

資源獲得

2.1 Lookup模式

? ? ? ?Lookup(查找)模式描述了如何通過使用查找服務作為中介實例來發(fā)現和訪問資源(不管資源是本地的還是分布的)。

?

1.問題

? ? ? 資源提供者可能提供了一個或多個資源給資源使用者。隨著時間的流逝額外的資源可能會增加出來,或者存在的資源可能被資源提供者移走。資源管理者發(fā)布存在資源的可獲取性的一種方式是以一定的時間間隔向感興趣的資源使用者發(fā)布廣播消息。這樣的消息必須每隔一段時間就發(fā)布一次,以確保加入系統(tǒng)的新的資源使用者知道可用的資源。相反,資源使用者也可以發(fā)送廣播消息請求所有可用的資源提供者響應。一旦資源使用者從所有可用資源提供者處獲得了回復,它就可以選擇其所需要的資源。但是,兩種方式可能都相當低效,并且代價高昂,因為它們產生了大量的消息,若是分布式系統(tǒng)的話,這些消息會充滿整個網絡。為了解決問題,讓資源提供者發(fā)布資源,并且讓資源使用者以開銷較小的方式有效地找到這些資源,需要解決如下問題:

? ? ? ·可用性(Availability)。資源使用者應當可以根據需要找到在其環(huán)境中哪些資源可用。

? ? ? ·自舉性(Bootstrapping)。資源使用者應該可以獲取資源提供者的初始引用。

? ? ? ·位置獨立性(Location independence)。資源使用者應當可以從資源提供者獲取資源,無論資源提供者位于何處。類似地,資源提供者應該可以為資源使用者提供資源,而不必知道資源使用者位于何方。

? ? ? ·簡單性(Simplicity)。當查找資源時,解決方案不應當給資源使用者帶來負擔。類似地,解決方案也不應當為資源提供者帶來負擔。

?

2.解決方案

? ? ? 提供資源查找服務,使得資源可被資源使用者獲得。資源提供者通過查找服務來發(fā)布資源,并附著描述其發(fā)布的資源的屬性。這樣資源使用者就可以先通過屬性來查找被發(fā)布的資源,然后獲取資源再使用資源。

? ? ? 對于需要在使用前獲取的資源,資源提供者把指向它們自己的引用同描述其提供的資源的屬性一起注冊,這樣資源使用者就可以獲得這些被注冊的引用,并使用它們來從被引用的資源提供者獲取可用資源。

? ? ? 對于不需要在使用前獲取而可以直接訪問的資源,比如可同步重用的服務,資源提供者把指向資源的引用同描述資源的屬性一起注冊。這樣資源使用者就可以直接訪問資源,而不必先同資源提供者打交道。

? ? ? 查找服務成為了資源使用者和資源提供者之間的通信中點。它使得資源使用者在明確需要以資源提供者獲取資源時可以訪問資源提供者。此外,查找服務也使得資源使用者可以直接訪問不需要從資源提供者獲取的資源。在這兩種情況下,資源使用者都不需要資源提供者的位置。類似地,資源提供者也不需要知道想要獲取并訪問它們提供的資源的資源使用者的位置。?

?

3.結構

? ? ? 資源使用者(Resource User)使用資源。

? ? ? 資源(Resource)是一個實體,比如一個提供某種類型的功能的服務。

? ? ? 資源提供者(Resource Provider)提供資源,并通過查找服務分布資源。

? ? ? 查找服務(Lookup Service)提供了讓資源提供者通過到其自身的引用發(fā)布資源,并讓資源使用者找到這些引用的能力。

? ? ??

? ? ? ?

?

4.實現

1)決定查找服務的接口。查找服務應當為資源的分布和查找提供方便,或者直接實現,或者通過它們的資源提供者來實現,它應當提供一個接口,讓資源提供者可以注冊以及注銷引用。

? ? ?可以為查找服務定義不同的策略。例如,查找服務可以支持與重復的名稱或者屬性的綁定。查找服務應當提供一個接口,讓資源使用者可以獲取所有可用資源提供者的列表。

2)決定是注冊資源引用還是資源提供者的引用。如果資源必須先由資源使用者顯式獲取,那么就應當向查找服務注冊提供那個資源的資源提供者的引用,并且一起注冊描述資源提供者所提供的資源的屬性。要求顯式獲取資源有利于控制可以訪問資源的資源使用者的類型。

? ? ?當資源提供者提供多個資源時,資源提供者的引用可以用于辨識資源。這有助于允許資源提供者把獲取請求同需要的資源相關聯(lián)。

? ? ?另一方面,如果資源不需要被顯式獲取,而是可以被資源使用者直接訪問,那么就可以向查找服務注冊資源的引用,并且一起注冊描述資源的屬性。例如,對于可以同時被重用的資源,可以通過向查找服務注冊資源引用的方式來使得資源使用者可以直接使用資源。這類資源的例子包括只讀對象和Web Service。這樣的資源或者沒有同步問題,或者自身可以對訪問同步。

3)實現查找服務。在內部,查找服務可以用很多種方式實現。比如,查找服務可以用某種樹型數據結構來保存注冊的引用以及它們的元數據,這在必須為復雜的依賴關系建模時很有幫助,或者也可以用簡單的哈希表來保存。對于非關鍵并且經常改變的資源發(fā)布,信息可以臨時性地存儲;而對于關鍵的發(fā)布,則應該把關聯(lián)以某種恰當的后端持久化機制來持久存儲。

4)提供查找服務訪問點。為了同查找服務通信,訪問點是必需的。訪問點可以是一個Java引用,一個C++指針或引用,也可以是一個通常會包含查找服務所有的主機名、端口號的分布式對象引用等等。這一信息可以以幾種方式分布給資源提供者和資源使用者,比如寫到一個資源提供者和資源使用者可以訪問的文件,或者通過定義好的環(huán)境變量。

? ? ?如果查找服務沒有發(fā)布訪問點,那么就需要設計一個自舉協(xié)議來使得資源提供者和資源使用者可以獲得訪問點。這樣的自舉協(xié)議通常會用廣播或者多播協(xié)議來設計。資源提供者或者資源使用者用自舉協(xié)議發(fā)送一個要求查找服務的引用的初始請求,收到請求之后,通常一個或者多個查找服務會向請求者發(fā)送回應,把它們的訪問點傳遞過去。然后資源提供者就可以同查找服務聯(lián)系以發(fā)布自己的引用。類似地,資源使用者可以同查找服務聯(lián)系以獲得注冊的資源提供者的引用。

5)決定查詢語言。查詢服務可以選擇支持一種查詢語言,使用資源使用者可以用復雜的查詢來尋找資源。

?

5.結論

優(yōu)點:

1)可獲得性(Availability)。使用查找服務,資源使用者可以根據需要找到在它的環(huán)境中哪些資源可用。請注意,資源或者其相應的資源提供者可能會變得不再可獲得,但它的引用可能尚未被從查找服務中刪去。

2)自舉(Boostrapping)。查找服務使得資源使用者可以獲得初始的資源。在分布式系統(tǒng)中,自舉協(xié)議使得資源使用者可以找到查找服務并用它來找到其他的分布式服務。

3)位置獨立性(Location independence)。查找服務提供了位置透明性,這是因為它向資源使用者屏蔽了資源提供者的位置。類似地,該模式也向資源提供者屏蔽了資源使用者的位置。

4)配置簡單性(Configuration simplicity)。基于查找服務的分布式系統(tǒng)需要很少或者不需要手工配置。不需要為了分發(fā)、發(fā)現或者訪問遠程對象而共享或者傳輸文件。自舉協(xié)議的使用是自組網絡場景(在這樣的場景中環(huán)境經常改變并且無從預知)的關鍵特性。?

5)基于屬性的選擇(Property-based selection)。資源可以基于屬性來選擇。這樣就使得細粒度地匹配用戶需求和資源分布成為可能。

?

缺點:

1)單一失敗點(Single point of failure)。Lookup模式帶來的一個后果是,如果查找服務的一個實例崩潰了,那么系統(tǒng)可能會失去注冊的引用及其相關屬性。等查找服務重啟之后,資源提供者需要重新向其注冊資源,除非查找服務具有持久化的狀態(tài)。這可能既令人厭煩又容易導致錯誤,因為它要求資源提供者來檢測查找服務是否崩潰并且重啟。此外,查找服務還可能會成為瓶頸,影響系統(tǒng)的性能,所以更好的解決方案是對查找服務引入復制。

2)懸掛引用(Dangling referneces)。Lookup模式帶來的另一個后果是產生懸掛引用的危險性。隨著相應的資源提供者終止服務或者被移走,注冊到查找服務的引用可能會變得過時。在這種情況下,Leasing模式可以提供幫助,它強迫資源提供者定期地“續(xù)借”它們的引用(如果它們不希望自己的引用被自動刪除的話)。

3)不想要的復制(Unwanted replication)。當具有相同屬性的類似資源進行發(fā)布,但又不想進行復制時,就會產生問題。取決于查找服務的實現,相同資源的多個實例可能會錯誤地注冊,或者一個資源提供者可能會覆寫前面一個資源提供者的注冊。確保至少一個屬性是唯一的可以避免這個問題。?

轉載于:https://www.cnblogs.com/pennant/archive/2012/10/09/2714233.html

超強干貨來襲 云風專訪:近40年碼齡,通宵達旦的技術人生

總結

以上是生活随笔為你收集整理的《面向模式的软件体系结构3-资源管理模式》读书笔记(1)--- Lookup模式的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 国产精品日韩 | 欧美日韩精品一区二区三区视频播放 | 日韩在线高清视频 | 国产又粗又猛又爽又黄的网站 | 国产视频xxx | 成人av网站在线播放 | 欧美人与性动交a欧美精品 日韩免费高清视频 | 91精品国产一区二区三区 | 青青草原成人 | 人妻精品一区二区在线 | 少妇第一次交换又紧又爽 | 天天色婷婷| 精品国产乱码久久久久久88av | 中文字幕蜜桃 | 中文字幕在线观看三区 | 偷拍亚洲视频 | 在线观看视频国产 | 国产乱码精品1区2区3区 | 国产精选视频 | 在线a网| www.av在线| 国产成人自拍在线 | 亚洲黄色录像 | 免费麻豆国产一区二区三区四区 | 国产午夜精品一区二区三区嫩草 | 亚洲国产久 | 精品无码在线观看 | 日本视频网 | 欧美日韩免费一区二区三区 | 色人阁五月天 | 99热一区二区 | 法国极品成人h版 | 精品中文视频 | 中文一区二区 | 九九久久视频 | 亚一区| 成人h片在线观看 | 亚洲视频在线播放 | 亚洲精品久久久久国产 | 国产suv精品一区二区 | 国产乱论视频 | 久久久一二三 | aaaaav| 国产精品久久久久久久久岛 | www.涩涩爱| 韩日午夜在线资源一区二区 | 在线黄色网 | 一区二区精品在线观看 | 亚洲综合激情另类小说区 | 久久久久夜 | 国产色播av在线 | 中文亚洲av片在线观看 | 男女涩涩网站 | 黄色片免费在线播放 | 黑人一区二区三区四区五区 | 婷婷综合在线观看 | av美女在线 | 国产91九色 | 欧美人在线 | 草草影院国产 | 蜜臀视频在线播放 | 欧美三级视频 | 国产一级片免费观看 | 人妖一区 | 美女视频黄色在线观看 | 欧美特级黄色录像 | 激情福利在线 | 在线欧美国产 | 欧美一级爽aaaaa大片 | 蜜臀尤物一区二区三区直播 | 日韩精品2| 手机av免费 | 国产精品视频网址 | 一区二区三区免费在线 | 日本在线网站 | 欧美久久久久久久久久久久 | 激情的网站 | 婷婷色亚洲 | 天天躁夜夜躁 | 538国产精品一区二区免费视频 | 色噜噜狠狠成人中文 | 国产精品久久久久三级无码 | 好吊色欧美一区二区三区视频 | 国产精品96 | 欧美日韩免费观看一区=区三区 | 97超碰网 | 亚洲妇女无套内射精 | 小视频在线 | 丁香花电影免费播放电影 | 婷婷激情在线 | 九九爱精品 | 99自拍偷拍| 无码h肉动漫在线观看 | 久久久久久久偷拍 | 欧美xx孕妇| 一级特黄av | 在线观看国产精品一区 | 中文字幕一区二区三区不卡 | 日本高清xxxx|