鬆散架構(Loosely Coupled Architecture)

來源:互聯網
上載者:User
文章目錄
  • 1,最小化關注點
  • 2,面向問題域解決問題

接觸了一些採用Linux/Unix工具的架構的應用以後,我發現我越來越喜歡鬆散的架構。即除了介面(UI),然後是演算法,最後是面向領域的工具或DSL。而Microsoft的架構大都反其道而行之,原因是:Microsoft想讓使用者用起來更傻瓜化,但是否能達到目的就不一定了。

 

對於資料交換的介面(Interface)層面,盡量用同通用的資料格式,如果是函數調用就用string,char,int之類的,如果是檔案就用Plain Text或者其他Human-Readable的格式。

 

鬆散架構的有點主要有兩個:

1,最小化關注點

2,面向領域(問題域)來解決問題

 

1,最小化關注點

實現最小化關注的前提是:簡單,通用資料格式,協議。在同一個時刻只解決一個問題。而這時介面,協議不能成為解決問題的累贅。還有就是適當的拆分問題,問題的拆分取決於問題域。而不是業務的解決方案域。Linux/Unix工具本身這點做的就很好,拆分的很乾淨。而這反過來就會促進問題的劃分。通過適當拆分,簡單通用資料格式,我們只解決該解決的問題——而不是因為解決方案而引入的問題,比如:資料轉換,資料轉送對象,阻抗匹配等等。

 

2,面向問題域解決問題

也就是採用面向領域的解決方案解決領域內的問題。採用合適的Unix工具:文本處理用Awk,Sed,Regular Expression;網路擷取用wget;尋找檔案或過濾用grep,find;自動化處理用Bash Scripting或者Ruby/Python等等。總之我們總能夠找到一個非常容易處理領域問題的語言或工具,不多不少地解決當前問題。

 

通過鬆散的架構,最終得到的應用看上去沒有Microsoft的巨無霸強壯,但實際上堅強無比。還有一個不那麼明顯但卻非常重要的優點是這種架構可以Evolution,隨著時間的推移這種架構容易調整成面向領域的架構,不多不少地解決架構該解決的問題,多的把他裁掉,少的把他補上。之所以可這樣是因為架構是鬆散的,不是誰一定要誰依賴於誰,不離不棄對愛情是好的,對架構來說是種災難。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.