您好,登錄后才能下訂單哦!
本篇內容主要講解“常見的web軟件架構模式有哪些”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“常見的web軟件架構模式有哪些”吧!
1. 分層模式
此模式可用于構造可分解為子任務組的程序,每個子任務都處于特定的抽象級別。每一層都向上一層提供服務。
一般信息系統最常見的4層結構如下。
表示層(也稱為UI層)
應用層(也稱為服務層)
業務邏輯層(也稱為域層)
數據訪問層(也稱為持久層)
用法
一般桌面應用程序。
電子商務網絡應用。
2. 客戶機-服務器模式
此模式由兩方組成:一個服務器和多個客戶端。
服務器組件將為多個客戶端組件提供服務。
客戶機從服務器請求服務,服務器向這些客戶機提供服務。此外,服務器繼續偵聽客戶端請求。
使用
在線應用程序,如電子郵件、文檔共享和銀行業務。
3. 主從模式
這種模式由兩個部分組成:主人和奴隸。主組件在相同的從組件之間分配工作,并根據從組件返回的結果計算最終結果。
用法
在數據庫復制中,主數據庫作為授權源,從數據庫與之同步。
連接到計算機系統中總線的外圍設備(主驅動器和從驅動器)。
4. 管道過濾方式
此模式可用于構造生成和處理數據流的系統。每個處理步驟都包含在過濾器組件中。要處理的數據通過管道傳遞。這些管道可用于緩沖或同步目的。
用法
編譯器。連續的過濾器執行詞法分析、解析、語義分析和代碼生成。
生物信息學的工作流程。
5. 經紀人模式
此模式用于構造具有分離組件的分布式系統。這些組件可以通過遠程服務調用相互交互。
代理組件負責協調組件之間的通信。
服務器將其功能(服務和特性)發布到代理。
客戶機從代理請求服務,然后代理將客戶機從其注冊表重定向到合適的服務。
用法
消息代理軟件,如Apache ActiveMQ、Apache Kafka、RabbitMQ和JBoss消息傳遞。
6. 點對點模式
在這種模式中,單個組件稱為對等組件。
對等方既可以作為客戶端,從其他對等方請求服務,也可以作為服務器,向其他對等方提供服務。
對等方可以充當客戶機或服務器,也可以同時充當兩者,并且它可以隨時間動態地更改其角色。
用法
Gnutella和G2等文件共享網絡)
多媒體協議,如P2PTV和PDTP。
7. 事件總線模式
此模式主要處理事件,有4個主要組件:事件源、事件偵聽器、通道和事件總線。
源將消息發布到事件總線上的特定通道。
監聽器訂閱特定的頻道。
將通知偵聽器已發布到其以前訂閱過的頻道的消息。
用法
Android開發
通知服務
8. 模型視圖控制器模式
這種模式,也稱為MVC模式,將交互式應用程序分為三個部分:,
模型-包含核心功能和數據
視圖-向用戶顯示信息(可以定義多個視圖)
控制器-處理來自用戶的輸入
這樣做是為了將信息的內部表示與信息呈現給用戶和接受用戶的方式分開。它分離組件并允許有效的代碼重用。
用法
主要編程語言中的萬維網應用程序的體系結構。
像Django和Rails這樣的Web框架。
9. 黑板模式
這種模式對于不知道確定性解決策略的問題很有用。黑板模式由三個主要部分組成。
黑板-包含解決方案空間中的對象的結構化全局內存
知識源-具有自己表示的專門模塊
控制組件-選擇、配置和執行模塊。
所有部件都能接觸到黑板。組件可能產生新的數據對象,這些對象被添加到黑板上。組件在黑板上查找特定類型的數據,并可以通過與現有知識源的模式匹配來找到這些數據。
用法
語音識別
車輛識別與跟蹤
蛋白質結構鑒定
聲納信號解釋。
10. 解析器模式
此模式用于設計解釋用專用語言編寫的程序的組件。它主要指定如何計算程序行,即用特定語言編寫的句子或表達式。其基本思想是為語言的每個符號建立一個類。
用法
數據庫查詢語言,如SQL。
用于描述通信協議的語言。
到此,相信大家對“常見的web軟件架構模式有哪些”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。