JAVA語言中關于EJB技術概論
JAVA語言中關于EJB技術概論,Enterprise JavaBean (EJB) 1.1 規(guī)范定義了開發(fā)和部署基于事務性、分布式對象應用程序的服務器端軟件組件的體系結構。企業(yè)組織可以構建它們自己的組件,或從第三方供應商購買組件。這些服務器端組件稱作 Enterprise Bean,它們是 Enterprise JavaBean 容器中駐留的分布式對象,為分布在網絡中的客戶機提供遠程服務。
EJB技術概論
Enterprise JavaBean (EJB) 1.1 規(guī)范定義了開發(fā)和部署基于事務性、分布式對象應用程序的服務器端軟件組件的體系結構。企業(yè)組織可以構建它們自己的組件,或從第三方供應商購買組件。這些服務器端組件稱作 Enterprise Bean,它們是 Enterprise JavaBean 容器中駐留的分布式對象,為分布在網絡中的客戶機提供遠程服務。
兩層和三層環(huán)境
在兩層客戶機/服務器環(huán)境中,程序員編寫與供應商特定軟件緊密結合的應用程序。通常,兩層應用程序直接從客戶機訪問數(shù)據(jù)庫服務或事務服務。有時這種應用程序稱作胖客戶機,因為應用程序邏輯駐留在客戶機上,這使客戶機變得龐大和復雜。下圖描繪了這一特性:
三層客戶機/服務器應用程序使用一個中間或中間層,應用程序服務器,它在客戶機應用程序和后端數(shù)據(jù)庫之間操作。中間層存儲了系統(tǒng)的商業(yè)邏輯,并協(xié)調客戶機上與后端數(shù)據(jù)庫交互的顯示。
在兩層模型上使用三層體系結構是出于以下兩個動機:
改進的可伸縮性、可用性和性能
改良的商業(yè)系統(tǒng)靈活性和可擴展性
由于兩層系統(tǒng)利用了客戶機的處理能力,因而它具有良好的性能,但許多客戶機對單一后端資源(如數(shù)據(jù)庫)的特性會產生瓶頸,隨著客戶機數(shù)量逐漸增大,這會抑制可伸縮性、可用性和性能。三層系統(tǒng)試圖通過更有效地管理后端資源來消除這個瓶頸。利用資源管理技術,如合用和集群中間層服務器,可以實現(xiàn)這個目標。
合用允許許多客戶機共享不充足的資源(如數(shù)據(jù)庫連接),這樣可以減少后端服務器的工作負荷,從而使三層系統(tǒng)更有效。由于多個服務器和資源可以支持故障恢復并均衡不斷增加的客戶機數(shù)量的負載,因此集群可以使三層系統(tǒng)變得更具可用性和可伸縮性。
三層系統(tǒng)比相應的兩層系統(tǒng)更靈活且更可擴展,這是因為商業(yè)邏輯和服務(如安全性和事務)都駐留在中間層,并且基本上獨立于客戶機應用程序。
如果正確實現(xiàn)了三層系統(tǒng),那么在使用 Enterprise JavaBean 的情況下,服務會自動應用于客戶機請求,因此服務是看不見的。由于服務對于客戶機不可見,因此對服務的更改也不可見。如果正確實現(xiàn)了三層系統(tǒng),那么中間層上對商業(yè)邏輯的更改和增強也可對客戶機應用程序隱藏。
另外,如果客戶機與中間件組件是以 Java 編程語言實現(xiàn)的,那么它們極有可能具有可移植性。可以非常容易地將實現(xiàn)客戶機和應用程序服務器的類文件重新安置到當前最合適的主機上。
【編輯推薦】















 
 
 
 
 
 
 