silvermyth

            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            1 隨筆 :: 12 文章 :: 1 評論 :: 0 Trackbacks
              在開始這個系列之前,讓我們來思考一個問題,什么是架構?當我們在談到架構的時候,我們指的到底是什么?很多人都嘗試給架構下一個定義,但是這些定義本身很難統一,結合我的理解,我認為架構的內涵包括以下內容:
          1. 最高層次的系統分解
          2. 系統中難以改變的東西
          3. 架構包括組成部分和這些組成之間的交互
          架構是分層次的,不同層次的架構關注的內容不同,描述方法不同,實現方式也不同。按照TOGAF的定義,架構主要分為幾個層次即業務架構、應用架構、數據架構和技術架構。
          • 業務架構 - 關注組織(類如企業)的業務流程、業務域和業務組件
          • 應用架構 - 業務架構中的流程和組件應該分成多少應用,應用之間如何集成和交互
          • 數據架構 - 物理和邏輯數據的結構
          • 技術架構 - 技術架構是應用架構的技術需求,包括如何進行純技術層面的分層,開發框架選擇,語言選擇,涉及到各自非功能性需求的技術點(安全,性能,日志,異常,緩存,消息,大數據量)等需要使用的關鍵技術
          關于架構層次的劃分和相互之間的關系,可以參考http://blog.sina.com.cn/s/blog_493a84550101cfen.html。如果沒有特別指明,文章包括后續的架構都指的是技術架構。
          既然有了架構,就應該可以判斷一個架構是好還是壞的,或者說哪方面好、哪方面壞;一個架構的衡量主要通過以下的系統特性來進行:
          • 系統高可用性
          • 系統性能(包括響應時間、吞吐量等)
          • 系統伸縮性
          • 系統可擴展性
          • 系統安全性
          我們要認識到,不同行業的架構復雜性有很大差別,例如電信行業的架構可能需要重點關注硬件設備,而企業應用一般來說業務邏輯復雜并且數據量大。在設計架構時,需要根據實際情況進行綜合考慮,沒有最好的架構,只有最合適的架構;架構的核心理念就是兩個字“平衡”,根據業務需求找到多個系統特性之間的平衡點,它反映了業務、應用、技術甚至是組織架構間的博弈過程。
          posted on 2017-03-30 23:43 Gavin Li 閱讀(101) 評論(0)  編輯  收藏 所屬分類: 架構

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 河东区| 房产| 江源县| 葵青区| 卫辉市| 潞城市| 西峡县| 瓮安县| 榆社县| 桦川县| 修水县| 义乌市| 西丰县| 乾安县| 时尚| 乌兰浩特市| 汝州市| 闽清县| 集安市| 乌审旗| 聂拉木县| 道孚县| 德化县| 武功县| 兰溪市| 泽普县| 涟源市| 娱乐| 舞钢市| 黄浦区| 黄龙县| 抚顺市| 柳州市| 宁河县| 旌德县| 周口市| 峨眉山市| 旬邑县| 香格里拉县| 运城市| 磐安县|