背景:
我们有2台JVM企业应用服务器,每台都部署了一个应用程序。我们需要启用从一台机器到另一台机器的业务功能调用。假设一个是客户端而另一个是服务器。
现在从性能角度来看,哪种方法更适合设计服务器应用程序。
记住以下事项:
我有两个选择:
纯EJB应用程序是指EJB客户端和EJB服务器组件
WebService简单Java方法(没有基于EJB的Web服务,因为它简直就是一团糟)
我的效果指标:速度:哪种设计方法可以更快地处理请求。我的业务应用程序肯定会部署在32位机器上!
另请注意,有2个JVM,一个是32位和64位(现在避免这种情况是不可避免的)
请提供您的反馈
此致
阿赫亚
答案 0 :(得分:8)
如果“Web服务”是指SOAP Web服务,那么无论您如何操作,EJB都应该更快。
优点:
缺点:
但是如果您不需要分布式事务处理,只需使用RMI即可。它有专业但没有EJB的缺点。它已存在多年,但它仍然只是花花公子。
答案 1 :(得分:1)
它不一定是一个或另一个。您可以在EJB中拥有所有业务逻辑,还可以提供Web服务外观来访问EJB。还要记住,有不同类型的Web服务体系结构。 SOAP是大多数人在听到“Web服务”时所想到的,但您可能也想看看JAX-RS。
通过HTTP将数据作为XML发送是非常低效的。另一方面,它为客户端提供了更多更多的灵活性。几乎可以从任何平台或编程语言中使用Web服务。