打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
关于EJB和SOA
userphoto

2022.10.27 上海

关注

先说EJB,这是Java官方(SUN公司)为了使Java支持分布式系统而制定的规范,可以说是J2EE规范的核心之一。由各个应用服务器各自去实现,比如IBM的Websphere、JBoss等。

但是,因为EJB本身的一些固有缺陷(本人没有EJB的实践经验,就不展开了,反正大家都说不好用),所以并没有得到广泛的使用,加上EJB只能基于Java,所以IBM、Oracle、HP等各个大厂又开始大力鼓吹、推广SOA。

SOA最初是个叫做Gartner的小公司(相对的小)提出来的,是一种“架构”或者说“思想”,具有跨平台、跨编程语言、松耦合等特性。但SOA本身并非具体的规范、更非具体的产品,所以IBM、Oracle等厂商各自有各自的产品和解决方案,而且都很重、很贵,如果按照这些大厂的解决方案去实施SOA,肯定要采购一大批硬件和软件,还不一定用得顺手。

抛开这些大厂的SOA解决方案和开源的SOA方案不谈,SOA落到实现上最常见的技术方案是WebService,而WebService又是由SOAP、WSDL、UDDI等构成。

然而,WebService(准确的说是SOAP)也不是个好伺候的东西,首先学习曲线比较陡、各种开源框架多如牛毛,遇到异常各种晦涩的异常信息,各种类冲突等,加上其他的一些缺陷,于是更加轻量、更加灵活的Restful异军突起。

从狭义上讲,可以认为WebService等同于SOAP。从广义上讲,Restful和SOAP都可以算做WebService的具体实现。

它们的关系是:SOA是概念上的、最顶层的抽象,WebService是实现层的抽象,SOAP和Restful都是具体的实现方式。

================分隔=================

以上属于个人对这些概念的理解,然后是回答问题时间:

1、SOA的通信方式是什么?

刚才说了,SOA是架构、是思想,SOA本身并没有什么通信方式。但SOA落到实现层,不管是SOAP还是Restful,最普遍的通信协议还是HTTP。

2、SOA和EJB的区别是什么?

初衷都是为了更好的搭建分布式系统,SOA是一种架构,EJB是J2EE规范的一部分。从层次上讲,SOA比EJB的层次更高一点,EJB大致和WebService是同一层次的东西。

3、WebService与Restful属于SOA吗?

不能用属于这个词,应该说WebService(特指SOAP)和Restful都是实现SOA的具体技术手段。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
webservice教程WebService的基础教程什么是WebServic
python REST讨论(收藏)
应用架构 --- 详解篇
EJB 笔记 -Chapter04 Web Service
SOA实践:构建基于Java Web服务和BPEL的企业级应用
Java Web Services面试问题集锦
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服