Web Service 与 EJB 的分布式的区别
EJB的分布式:一个业务逻辑可能会调用分布在多台服务器上的 EJB 组件,但是这么多的组件调用必须纳入一个事务范围之中。也就是说如果需要调用三个 EJB 组件,第一个调用成功,第二个调用成功,但第三个调用失败了,因此在第一和第二次调用成功时进行的事务操作(这里的事务操作不单单指数据库的,还有可能包括消息队列服务的事务)都必须进行回滚。
但是,如果是调用三个 WebService 的话,那调用成功的那两个基本上是不可能进行回滚的,调用完了就是完了。
WebService 只是对外提供的调用接口,而 EJB 是个业务组件。一个对外的 WebService 在服务端中也是需要实现业务逻辑的,在 J2EE 中,这些业务逻辑基本上都是由 EJB 组件来实现,对外发布 WebService 接口(当然了,使用符合 JAX-WS 规范的开源框架不用 EJB 也能做到)。
相对于 EJB 这种服务端来说,Servlet 只能算是一个 Web 层面调用的客户端。一个 EJB 组件不仅仅是只能用于 B/S 结构的应用,也能用于 C/S 结构的应用。这也能澄清很多人的误区,认为 Java Web 就是 J2EE 了,其实 J2EE 是一系列的规范集,而 Java Web 只是 J2EE 诸多规范中的一小部分。J2EE 中其他大部分规范定义的都是服务端的东西,作为具体的客户端调用,可以是 B/S 的,也可以是 C/S 的。
Web Service 与 EJB 的分布式的区别的更多相关文章
- http服务 WCF、Web API、Web service、WCF REST之间的区别
http服务 WCF.Web API.Web service.WCF REST之间的区别 在.net平台下,有大量的技术让你创建一个HTTP服务,像Web Service,WCF,现在又出了Web ...
- web service与EJB的区别
1.WebService可以说是跨平台的,因为它采用的是XML技术,说穿了就是把你的请求按照该WebServece的标准将参数传过去,然后服务器返回结果,当然了最重要的是参数的传递和结果的返回都是采用 ...
- 学习Web Service、wcf、webapi的区别
csdn:关于wcf,webservice,webapi或者其他服务或者接口有什么区别. wcf,webservice采用的是rpc协议,这个协议很复杂,所以每次要传递.要校验的内容也很复杂,别看我们 ...
- Web Service和Servlet的区别
没接触过web service今天看了一篇文章转过来. 在最开始学习Web Service时候,总觉得Web Service和Servlet没有什么区别,觉得Servlet可以对Http请求进行相应并 ...
- 远程通信(RPC,Webservice,RMI,JMS、EJB、JNDI的区别)对比
总结这些概念都是易混淆,最基本概念定义复习和深入理解,同时也是架构师必备课程 RPC(Remote Procedure Call Protocol) RPC使用C/S方式,采用http协议,发送请求到 ...
- 软件架构设计学习总结(15):远程通信(RPC,Webservice,RMI,JMS、EJB、JNDI的区别)对比
总结这些概念都是易混淆,最基本概念定义复习和深入理解,同时也是架构师必备课程 RPC(Remote Procedure Call Protocol) RPC使用C/S方式,采用http协议,发送请 ...
- Web Service和WCF的区别。其实二者不属于一个范畴!!!
Web Service和WCF的区别 [1]Web Service:严格来说是行业标准,也就是Web Service 规范. 它有一套完成的规范体系标准,而且在持续不断的更新完善中. 它使用XML扩展 ...
- WCF、Net remoting、Web service概念及区别
Windows通信基础(Windows Communication Foundation,WCF)是基于Windows平台下开发和部署服务的软件开发包(Software Development Kit ...
- wcf和web service的区别
1.WebService:严格来说是行业标准,不是技术,使用XML扩展标记语言来表示数据(这个是夸语言和平台的关键).微软的Web服务实现称为ASP.NET Web Service.它使用Soap简单 ...
随机推荐
- UVa 11524 - InCircle
推公式 #include <cstdio> #include <cmath> double Cal( double a, double b, double c ) { retu ...
- DNS主配置文件的几个选项
options块中: listen-on port 监听DNS查询请求的本机IP地址及端口 eg:listen-on port 53 { 192.168.0.78 };监听本机的192. ...
- JVM学习笔记(四)------内存调优
首先需要注意的是在对JVM内存调优的时候不能只看操作系统级别Java进程所占用的内存,这个数值不能准确的反应堆内存的真实占用情况,因为GC过后这个值是不会变化的,因此内存调优的时候要更多地使用JDK提 ...
- Cookie的具体使用之来存储对象
1.创建一个新的cookie,并赋值. HttpCookie cookie; cookie=new HttpCookie("user"); cookie.D ...
- [HDOJ3974]Assign the task(建树胡搞)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3974 出现在窝bin的线段树专题里…第一时间想的是记录入度找出根节点,然后标记深度转换到线段树中.但是 ...
- 函数buf_page_address_fold
/********************************************************************//** Calculates a folded value ...
- .gitignore的使用:首次创建及事后添加无法生效.
问题:使用sourceTree做版本管理后, Xcode工程每次打开, 都会有几个xcodeworkspace之类的文件提示改动了. 如果想ignore掉, 有两种情况: 1:整个工程没有纳入版本管理 ...
- Cocoa Touch(一)开发基础:Xcode概念、目录结构、设计模式、代码风格
Xcode相关概念: 概念:project 指一个项目,该项目会负责管理软件产品的全部源代码文件.全部资源文件.相关配置,一个Project可以包含多个Target. 概念:target 一个targ ...
- 实现推送功能APP端需要完成的工作
推送功能简介 实现推送的流程如下: 从APP注册推送功能,到APNS服务器发送推送消息给设备,有五个步骤. 一旦推送注册完成,应用自身的服务器以provider的身份提供推送. APP端实现 在代码方 ...
- session服务器Nginx+Tomcat+Memcached集群Session共享
cookie是怎样工作的? 例如,我们创立了一个名字为login的Cookie来包含访问者的信息,创立Cookie时,服务器端的Header如下面所示,这里假设访问者的注册名是“Michael Jor ...