分布式架構和垂直架構


垂直架構

特點

  • 不管項目多復雜,有多少個模塊,全在一個項目中編寫
  • 項目部署在一個web容器上,適合於 訪問量小,用戶數不多的業務

優點

  • 耦合度比較高
    • 所有功能模板代碼都放到了一起,
  • 不利於擴展
    • 寫好了, 測試完了,想要加一個模塊非常的困難
    • 如果果某個功能出錯有問題,所有的功能都需要再重新打包編譯,部署效率極低。
    • 上線時, 把項目停掉
  • 不利於團隊協作維護
    • 團隊協作難度高,如多人使用SVN/git很可能在同一個功能上,多人同時進行了修改,作為一個大而全的項目,可能個人只是需要開發其中一個小的模塊的需求,卻需要導入整個項目全量的代碼。

缺點

  • 結構簡單

分布式架構(SOA架構)

SOA(Service-Oriented Architecture)它是一種支持面向服務的架構。(分布式架構)

特點

  • 將傳統項目中的一個模塊,拆分成一個一個項目

優點

  • 降低模塊之間的耦合度
  • 利於擴展
  • 利於維護

缺點

  • 結構復雜
  • 對於小型項目 ,成本比較高

特點

  • 模塊的拆分
    • 如果某一個系統訪問量比較大時, 可以多部署幾台tomcat,
    • 當出現高並發的時候 , 通過nigix負載均衡,進行分配訪問
    • 如果今后, 想要再添加 一個模塊, 可以直接在寫一個項目,弄台新機器,直接上線
  • 業務功能的拆分
    • 除了把對應模塊拆成一個系統外, 還可以把我們的三層架構拆成對應的服務,把Controller做為一個系統,Dao和Service做為一個系統
    • 如果調用多了,一台不夠用戶了, 可以多部署幾台
  • 存在的問題
    • 在以前Controller調用Service,通過注入進行調用,注入屬於是Spring的
    • 當Controller在一個服務器中, Service在另一台服務器,是沒有辦法注入的
    • 此時, 可以采用一個技術叫Dubbox,可以實現跨tomcat 注入 遠程調用
    • Dubbo是的跨服務器,注入的技術,這么多服務,到底是認認證調用誰,怎么知道的呢
    • 通過zookeeper注冊中心,所有的服務都到zookeeper當中注冊一下, 注冊后.
    • 今后服務之間的調用,就可以通過zookeeper找到對應的服務,通過Dubbo進入注入


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM