對SOA架構模板和JavaEE應用方案的一點看法
SOA 的一個架構模板 soa _arc.jpg src="/DOC/share/6285323.jpg" width=470 border=0> 目前成熟的 Java EE 應用,推薦三層架構:表現層、控制層、業務邏輯層(可細分業務邏輯、持久化兩層)。貫穿于所有層的是基礎設施( 安全 、事務、 可靠性 等)。 對比可
soa_arc.jpg src="/DOC/share/6285323.jpg" width=470 border=0>
目前成熟的
JavaEE 應用,推薦三層架構:表現層、控制層、業務邏輯層(可細分業務邏輯、持久化兩層)。貫穿于所有層的是基礎設施(
安全、事務、
可靠性等)。
對比可以看出:
SOA 的服務層對應于
JavaEE 系統間的接口。不同的是前者是系統間,后者是系統內。但都是被發現或者靜態邦定或者聲明式注入,然后調用。前者對系統集成、后者對單個系統實現來說功能是一致的。但是前者的優勢在于通過文檔( WSDL )聲明的方式屏蔽了系統、語言之間的差異性,如果是同一實現體系中不考慮異構,后者的優勢在于效率。
企業組件層對應于 JavaEE 系統的業務邏輯層。都是負責實現業務功能、提供基礎設施服務的組件。常運行于應用
服務器中。
SOA 的業務過程合成層對應 JavaEE 的控制層(包括 Fa&
clearcase/" target="_blank" >ccedil;ade Pattern )。前者把單個或者一系列服務綁定成一個控制流程,可以做為單獨的應用程序使用。后者通過 Façade 模式將不同的組件結合起來,提供一個統一的訪問口。
表現層類似??梢允?GUI 也可以是
Web ?,F在更崇尚
Web 。而且表現層( Web )一定要遵循 MVC 模式(注: MVC 不是 JavaEE 的三層結構,注意區分,只是表現層的一種架構,確切的說,還不是模式)。
SOA 的 QoS 與成熟的 JavaEE 應用一致。
原文轉自:http://www.kjueaiud.com