更新時間:2022-05-19 10:59:04 來源:動力節點 瀏覽1671次
動力節點小編告訴大家,Java三層架構將應用程序分為三個邏輯和物理計算層,是傳統客戶端-服務器應用程序的主要軟件架構。
三層架構是一種成熟的軟件應用程序架構,它將應用程序組織成三個邏輯和物理計算層:表示層或用戶界面;處理數據的應用層;和數據層,存儲和管理與應用程序關聯的數據。
三層架構的主要好處是,因為每一層都在自己的基礎設施上運行,每一層都可以由單獨的開發團隊同時開發,并且可以根據需要進行更新或擴展,而不會影響其他層。
表示層
表示層是應用程序的用戶界面和通信層,最終用戶與應用程序進行交互。其主要目的是向用戶顯示信息并從用戶那里收集信息。例如,此頂級層可以在 Web 瀏覽器上運行,作為桌面應用程序或圖形用戶界面 (GUI)。Web 表示層通常使用 HTML、CSS 和 JavaScript 開發。取決于平臺,桌面應用程序可以用多種語言編寫。
應用層
應用程序層,也稱為邏輯層或中間層,是應用程序的核心。在這一層中,在表示層中收集的信息會被處理——有時會對照數據層中的其他信息——使用業務邏輯,一組特定的業務規則。應用層還可以添加、刪除或修改數據層中的數據。
應用層通常使用 Python、Java、Perl、PHP 或 Ruby 開發,并使用API調用與數據層通信。
數據層
數據層,有時稱為數據庫層、數據訪問層或后端,是存儲和管理應用程序處理的信息的地方。這可以是關系數據庫管理系統,例如PostgreSQL、MySQL、MariaDB、Oracle、DB2、Informix 或 Microsoft SQL Server,也可以是NoSQL數據庫服務器,例如 Cassandra、CouchDB或MongoDB。
在三層應用程序中,所有通信都通過應用程序層。表示層和數據層不能直接相互通信。
層與層
在三層架構的討論中,layer 經常被互換使用——并且錯誤地——用于 tier,如“表示層”或“業務邏輯層”。
他們不一樣。“層”指的是軟件的功能劃分,而“層”指的是軟件的功能劃分,它在與其他劃分分開的基礎設施上運行。例如,您手機上的聯系人應用程序是一個三層應用程序,但也是一個單層應用程序,因為所有三層都在您的手機上運行。
區別很重要,因為層不能提供與層相同的好處。
同樣,三層架構的主要好處是其邏輯和物理功能分離。每一層都可以在單獨的操作系統和服務器平臺上運行——例如,Web 服務器、應用程序服務器、數據庫服務器——最適合其功能需求。并且每一層都運行在至少一個專用服務器硬件或虛擬服務器上,因此每一層的服務都可以定制和優化,而不會影響其他層。
其他好處(與單層或兩層架構相比)包括:
更快的開發:因為每一層可以由不同的團隊同時開發,組織可以更快地將應用程序推向市場,程序員可以為每一層使用最新和最好的語言和工具。
改進的可擴展性:任何層都可以根據需要獨立于其他層進行擴展。
提高可靠性:一個層的中斷不太可能影響其他層的可用性或性能。
改進的安全性:由于表示層和數據層不能直接通信,設計良好的應用層可以作為一種內部防火墻,防止 SQL 注入和其他惡意攻擊。
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習