J2EE 應用按層與 JVM 分布可分為四類架構。本文釐清三層模型(UI/Middle/EIS),並詳細對比四類架構的適用場景、優缺點與演進路徑,助力根據業務規模、非功能需求做出理性選型。
| 類型 | 架構特徵 | 適用場景 | 關鍵點 |
|---|---|---|---|
| A. 具備業務介面的 Web 應用 | Web層+業務層同一 JVM,普通 Java 介面實現業務邏輯 | 中小型、單機部署、團隊熟悉 Spring/POJO | 職責劃分清晰:UI 組件 vs 業務介面 |
| B. 可訪問本地 EJB 的 Web 應用 | 同一 JVM,業務介面由 Session Bean 實現 | 需 EJB 事務/安全/池化服務,但暫無分布需求 | 本地介面調用,無序列化開銷 |
| C. 訪問遠程 EJB 的分布式應用 | Web層與EJB層分離部署於不同 JVM/物理機 | 大型、高併發、計算密集型業務需水平擴展 | 經典 J2EE,但遠程調用效能損耗大,複雜度高 |
| D. 使用 Web Services 介面的 Web 應用 | 基於 SOAP/HTTP、WSDL/UDDI,支援異構客戶端 | 需與 .NET/主機/第三方系統集成 | 跨語言/跨平台互操作,標準化程度最高 |
架構服務於業務,切勿過度設計。單體先行,有擴展壓力再演進。遠程調用是最後手段,而非起點。