2009-01-06 56 views
1

想象一下,一個Java客戶端/服務器ERP應用程序可以爲100個併發用戶提供服務,包括web和swing客戶端。爲了持久化,我們可以使用Persistence API和Hibernate。 但是,當涉及到客戶端/服務器通信時,我們是否真的可以選擇使用AS來減少遠程通信的編程成本?應用程序服務器(使用EJB)是Java EE客戶機/服務器通信的唯一途徑嗎?

這似乎是一個非常重量級的解決方案,用於引入EJB和應用程序服務器,僅用於遠程處理。還有使用RMI的標準方式,但是誰想要現在自己編寫所有代碼...

我知道除了遠程處理部分之外,您還可以通過AS免費獲得許多功能。而且,也許這是要走的路。但是,對於企業應用程序進行客戶端/服務器通信,是否還有其他任何(低編程成本)替代方案?

回答

3

我個人認爲Seam將是最終解決問題的辦法,我沒有但這之外,還有很多的選擇和彈簧用於大部分:

基於HTTP的遠程處理方法的優點是它們可以輕鬆插入到Spring的安全模型中。另外,你可以訪問攔截器之類的東西。

2

您可以使用輕量級遠程處理框架。 Spring在本節中有許多選項。

如果你問我兩個詞,我會建議兩個。縫或春天。我自己喜歡Seam,但對於輕量級遠程Spring有更多可行的解決方案和支持。再次如果你的AS是JBoss,請考慮Seam

2

應用程序服務器是一個相當重量級的解決方案。根據您的要求,我會盡力確保您可以在簡單的servlet容器(如Tomcat)上運行。我發現使用Spring-remoting而不是完整的EJB更容易遠程處理。 Spring遠程處理提供了對所使用的實際遠程技術的抽象。作爲輕量級協議,Hessian具有良好的聲譽。

擁有某種服務器框架(AS或servlet容器)是一件好事,因爲您不需要考慮所有低級別問題(連接建立,線程......)。

相關問題