1. <tt id="5hhch"><source id="5hhch"></source></tt>
    1. <xmp id="5hhch"></xmp>

  2. <xmp id="5hhch"><rt id="5hhch"></rt></xmp>

    <rp id="5hhch"></rp>
        <dfn id="5hhch"></dfn>

      1. 系統(tǒng)架構(gòu)設(shè)計(jì)模式

        時間:2023-02-26 13:52:37 系統(tǒng)架構(gòu)師 我要投稿
        • 相關(guān)推薦

        系統(tǒng)架構(gòu)設(shè)計(jì)模式大全

          目前系統(tǒng)架構(gòu)大約有110多種設(shè)計(jì)模式,模式不是教條,模式僅僅是經(jīng)驗(yàn)的總結(jié),下面小編為大家整理了一些系統(tǒng)架構(gòu)設(shè)計(jì)模式,一起來看看吧:

          Domain Model:定義了一個應(yīng)用領(lǐng)域結(jié)構(gòu)和工作流的精確模型,其中還包括它們的變化。

          Layers:解決系統(tǒng)合理分層的問題。

          Model-View-Controller:解決對用戶界面變化的支持問題。支持某一特定用戶界面的變化。

          Presentation-Abstraction-Control:解決相同業(yè)務(wù)具有多種表現(xiàn)形式問題。

          Microkernel:解決業(yè)務(wù)具有多種不同業(yè)務(wù)方法的問題。

          Refelection:解決需要動態(tài)改變軟件系統(tǒng)結(jié)構(gòu)和行為的問題。

          Pipes and Filters:解決算法的結(jié)構(gòu)化并可以重新構(gòu)建的問題。

          Shared Repository:適用于網(wǎng)絡(luò)管理和控制系統(tǒng)領(lǐng)域。

          Blackboard:解決運(yùn)行中智能化改進(jìn)處理方法的問題。

          Domain Object:表現(xiàn)為已經(jīng)將自我完備的連貫功能和基礎(chǔ)性責(zé)任封裝成定義良好的實(shí)體,通過一個或多個”顯示接口”提供功能,并隱藏內(nèi)部結(jié)構(gòu)和實(shí)現(xiàn)。

          Messaging:由一系列相互連接的MessageChannel和Message Router管理著跨網(wǎng)絡(luò)的不同服務(wù)間的消息交換。

          Message Channel:解決如何把彼此協(xié)作的客戶端和服務(wù)連接起來的問題。

          Message Router:解決如何根據(jù)條件接受”信道”消息的問題。

          Message Translator:解決如何轉(zhuǎn)換消息格式的問題。

          Message Endpoint:解決把數(shù)據(jù)轉(zhuǎn)換為消息中間件能夠理解的形式的問題。

          Publisher-Subscriber:為了在應(yīng)用中更好的把彼此關(guān)注的事件通知給其它領(lǐng)域?qū)ο蟆?/p>

          Broker:通過一個代理管理器管理領(lǐng)域?qū)ο箝g遠(yuǎn)程互操作的各個關(guān)鍵方面。

          Client Proxy:解決客戶端應(yīng)用與網(wǎng)絡(luò)基礎(chǔ)設(shè)施相互屏蔽的問題。

          Requestor:解決應(yīng)用代碼被基礎(chǔ)設(shè)施的代碼污染而影響可移植性的問題。

          Invoker:解決服務(wù)代碼被基礎(chǔ)設(shè)施的代碼污染而影響可移植性的問題。

          Client Request Handler:解決客戶端應(yīng)用與通信相互影響的問題,它封裝了客戶端在統(tǒng)一的接口背后進(jìn)行的進(jìn)程間通信的細(xì)節(jié)。

          Server Request Handler:解決服務(wù)端應(yīng)用與通信相互影響的問題,封裝了服務(wù)器端在統(tǒng)一的接口背后進(jìn)行的進(jìn)程間通信的細(xì)節(jié)。

          Reactor:解決在應(yīng)用中避免使用多線程的問題。

          Proactor:解決在多線程的背景下出現(xiàn)性能問題的缺陷。

          Acceptor-Connector:把事件初始化與具體處理方法分離,從而提高可維護(hù)性。

          Asynchronous Completion Token:解決異步到達(dá)的事件仍然能按一定順序處理的問題。

          Explicit Interface:解決如何正確設(shè)計(jì)接口的問題。

          Extension Interface:隨著時間的推移,組件的接口是會膨脹的,一個胖的接口將更脆弱。解決防止”胖”接口并分離接口。

          Introspective Interface:解決公開內(nèi)部信息接口的問題。

          Dynamic Invocation Interface:解決同一個接口允許客戶端調(diào)用多種方法的問題。

          Proxy:解決在同一個接口下通過代理屏蔽某些實(shí)現(xiàn)的問題。

          Business Delegate:由本地業(yè)務(wù)代表來完成所有網(wǎng)絡(luò)任務(wù),分離了應(yīng)用和網(wǎng)絡(luò)處理的業(yè)務(wù),減少了開發(fā)難度、提高了可理解性和可維護(hù)性。

          Facade:解決屏蔽子系統(tǒng)的變化輻射到高層應(yīng)用的問題。

          Combined Method:解決多種相互關(guān)聯(lián)的方法不合理的分布的問題。

          Iterator:解決分布式元素能夠方便迭代的問題。

          Enumeration Method:解決減少外部迭代方式多次對聚合中的元素進(jìn)行獨(dú)立訪問開銷的問題。

          Batch Method:解決多次訪問加大網(wǎng)絡(luò)開銷的問題。

          Encapsulated Implementation:解決對象劃分的基本原則和方法問題。

          Composite:建立一種結(jié)構(gòu)靈活的樹狀結(jié)構(gòu)對象組織形式,形成“整體/部分”層級結(jié)構(gòu)。

          Half-Object plus Protocol:通過在分布式系統(tǒng)中合理布局對象,以減少不合理的網(wǎng)絡(luò)流量和服務(wù)器壓力。

          Replicated Component Group:解決分布式系統(tǒng)容錯的問題,復(fù)制的組件實(shí)現(xiàn)位于不同的網(wǎng)絡(luò)節(jié)點(diǎn),并組成一個組件組。

          Half-Sync/Half-Async:對并發(fā)系統(tǒng)中的異步和同步服務(wù)處理解耦合以簡化編程,但又不會過度地影響性能。

          Leader/Followers:解決大批量小處理的環(huán)境下減少并發(fā)線程應(yīng)用的問題。

          Active Object:為了減少服務(wù)器并發(fā)線程應(yīng)用。

          Monitor Object:解決并發(fā)業(yè)務(wù)相互協(xié)調(diào)的問題。

          Guarded Suspension:在并發(fā)性程序中,當(dāng)某個線程對一個資源進(jìn)行訪問的時候,首先需要判斷這個資源的警戒條件是否成立。

          Future:并發(fā)調(diào)用的服務(wù)可能需要向客戶端返回結(jié)果。

          Thread-Safe Interface:避免自死鎖和加鎖開銷。

          Strategized Locking:在創(chuàng)建或聲明時,為組件配置適當(dāng)類型的鎖實(shí)例。使用該鎖實(shí)例來保護(hù)組件中的所有臨界區(qū)。

          Scoped Locking:解決復(fù)雜繁瑣代碼中的疏忽發(fā)生漏釋放造成死鎖的問題。

          Thread-Specific Storage:解決頻繁使用對象造成反復(fù)加鎖解鎖造成的性能問題。

          Copied Value:解決共享的值對象必須鎖定帶來的性能問題。

          Immutable Value:解決共享的值對象必須鎖定帶來的性能問題。

          Observer:定義一個特定的更新接口,通過該接口,Observer獲得Subject狀態(tài)變更的通知。

          Double Dispatch:根據(jù)運(yùn)行時多個對象的類型確定方法調(diào)用的過程。

          Mediator:封裝集合中所有對象的聚合協(xié)作行為,從而將這些對象解耦合。

          Command:為這些對象定義一個通用接口,來執(zhí)行它們所代表的請求。

          Memento:解決在不破壞封裝性的前提下正確存儲和讀取分布式對象狀態(tài)的問題。

          Context Object:解決在松耦合系統(tǒng)中共享與程序執(zhí)行上下文相關(guān)的通用信息的問題。

          Data Transfer Object:解決細(xì)粒度調(diào)用多次訪問遠(yuǎn)程對象單個屬性所帶來的巨大開銷問題。

          Message:解決網(wǎng)絡(luò)協(xié)議只支持比特流這種最簡單的數(shù)據(jù)傳輸形式,并不能識別服務(wù)調(diào)用和數(shù)據(jù)類型的問題。

          Bridge:解決在下層穩(wěn)定的業(yè)務(wù)中嵌入上次變化部分的問題。

          Object Adapter:解決接口變化導(dǎo)致的不兼容問題。

          Chain of Responsibility:解決對象結(jié)構(gòu)和請求分發(fā)邏輯上的變化影響到客戶端的問題。

          Interceptor:解決構(gòu)建一個可插拔的框架變化模型的問題。

          Visitor:解決將服務(wù)的實(shí)現(xiàn)分散在定義對象結(jié)構(gòu)的各個類中難以進(jìn)行集中處理的問題。

          Decorator:解決在穩(wěn)定的核心功能外圍添加擴(kuò)展的問題。

          Template Method:解決在下層穩(wěn)定的業(yè)務(wù)中嵌入上次變化部分的問題。

          Strategy:解決在一個或多個方法中根據(jù)不同的情況執(zhí)行不同行為的問題。

          Wrapper Facade:主要解決應(yīng)用代碼使用底層API所提供的服務(wù)但代碼難以理解的問題,需要對底層API進(jìn)行面向?qū)ο蟮姆庋b,通過提供一個簡潔的、健壯的、可移植的、內(nèi)聚的面向?qū)ο蟮慕涌冢瑏磉_(dá)到封裝函數(shù)和數(shù)據(jù)的目的。

          Declarative Component Configuration:建立需要安裝各類插件的宿主基礎(chǔ)設(shè)施,使其能夠正確管理運(yùn)行時環(huán)境,可靠運(yùn)用系統(tǒng)資源和服務(wù)的問題。

          Container:解決領(lǐng)域?qū)ο笾苯犹幚砥脚_環(huán)境造成它與平臺緊密耦合并增加實(shí)現(xiàn)的復(fù)雜性的問題。

          Component Configurator:解決在組件生命周期后期和升級時重新配置組件的問題。

          Object Manager:解決客戶端依賴對象管理增加應(yīng)用內(nèi)部的耦合度和復(fù)雜度的問題。

          Virtual Proxy:解決從一個巨大數(shù)據(jù)庫中把所有的對象全部加載進(jìn)來消耗大量資源的問題。

          Resource Pool:解決獲取和釋放資源(網(wǎng)絡(luò)連接、線程或者內(nèi)容)引入一定的性能開銷問題。

          Resource Cache:解決幾個有限的資源用戶頻繁創(chuàng)建和釋放資源帶來不必要的性能開銷問題。

          Automated Garbage Collection:解決不能及時將不再使用的內(nèi)存收回可能耗盡內(nèi)存的問題。

          Counting Handles:解決確保在堆上創(chuàng)建的共享對象能夠可靠地、安全地、及時地回收的問題。

          Abstract Factory:解決一批對象用統(tǒng)一的方法進(jìn)行創(chuàng)建和銷毀的問題。

          Builder:解決對需要多步完成對象的創(chuàng)建時,簡化創(chuàng)建過程的復(fù)雜性和多樣性問題。

          Factory Method:解決直接創(chuàng)建對象可能導(dǎo)致代碼的混亂并影響調(diào)用端代碼的獨(dú)立性問題。

          Disposal Method:解決銷毀對象時可能需要多個步驟而引人過度的耦合問題。

          Database Access Layer:它通過在兩種之間引人一個映射層將面向?qū)ο髴?yīng)用設(shè)計(jì)同關(guān)系型數(shù)據(jù)庫分離開。

          Data Mapper:解決數(shù)據(jù)模型和持久化的表結(jié)構(gòu)之間完全的解耦合的問題。

          Row Data Gateway:解決更細(xì)致的數(shù)據(jù)模型和持久化的表結(jié)構(gòu)之間完全解耦的問題。

          Table Data Gateway:解決更細(xì)致的數(shù)據(jù)模型和持久化的表結(jié)構(gòu)之間完全解耦的問題。

          Active Record:解決降低應(yīng)用中面向?qū)ο髷?shù)據(jù)模型與數(shù)據(jù)庫中表結(jié)構(gòu)之間的耦合的問題。

        【系統(tǒng)架構(gòu)設(shè)計(jì)模式】相關(guān)文章:

        系統(tǒng)架構(gòu)師知識:高可用系統(tǒng)設(shè)計(jì)05-14

        航標(biāo)業(yè)務(wù)系統(tǒng)架構(gòu)的設(shè)計(jì)和實(shí)現(xiàn)06-10

        web系統(tǒng)分層架構(gòu)設(shè)計(jì)06-17

        RFID校園監(jiān)控系統(tǒng)架構(gòu)設(shè)計(jì)06-20

        車輛遠(yuǎn)程監(jiān)控系統(tǒng)架構(gòu)設(shè)計(jì)06-20

        SSH架構(gòu)檔案管理系統(tǒng)設(shè)計(jì)06-21

        系統(tǒng)架構(gòu)設(shè)計(jì)師要素06-03

        基于安卓系統(tǒng)的移動辦公系統(tǒng)架構(gòu)設(shè)計(jì)06-21

        城市物流共同配送系統(tǒng)架構(gòu)設(shè)計(jì)06-20

        国产高潮无套免费视频_久久九九兔免费精品6_99精品热6080YY久久_国产91久久久久久无码

        1. <tt id="5hhch"><source id="5hhch"></source></tt>
          1. <xmp id="5hhch"></xmp>

        2. <xmp id="5hhch"><rt id="5hhch"></rt></xmp>

          <rp id="5hhch"></rp>
              <dfn id="5hhch"></dfn>