它们都可以基于RPC远程调用另外一台机器上的过程和对象。
他们都会在客户端和服务端生成代理。不同的是底层的协议不同,corba走TCP底层协议,而Web Service依托TCP之上的HTTP协议(也支持SMTP等),在HTTP上实现了SOAP协议,通过SOAP来调用远程的过程和对象。由于本人研究较少,还有很多方面的异同由此间的高手补充。

解决方案 »

  1.   

    完全两码事,无论从协议,运做极力来讲。
    最重要的区别是,CORBA几乎快要被淘汰,而WEB SERVICE则是未来的技术。
      

  2.   

    楼上说的本人不敢苟同啊。
    谁说CORBA快被淘汰了?而谁又决定了Web Service是未来的技术呢?
      

  3.   

    那相比之下corba和webservice各有什么优点呢?谢谢
      

  4.   

    corba的开发复杂,没有现成的框架可以用,但是运行速度快
    WebService的开发简单,支持的开发工具多,对跨平台的特性支持的更好,但是其基于XML SOAP的特点,使得性能上略为差一些。另外对回调函数的支持等双向的调用支持不够,不过目前还在发展之中。
      

  5.   

    谁说CORBA快被淘汰了?它的效率是很高的,比ejb的性能还要好,开发的难度一点,对于大型系统,对性能要求很高的,例如银行,电信...corba是首选,webservice的还要走很长的一段路。还有corba是iiop协议
      

  6.   

    COBRA: 通用对象代理体系结构. 由OMG开发.提供一种无需强制使用任何专有协议或特殊编程语言, 操作系统或硬件平台的, 面向对象的解决方案. 
    缺点: 初期的高投入 基于CORBA的应用程序在培训和体系结构部署方面需要极大的投入. 
    CORBA服务的可用性: 缺少以产品实现开工的OMG指定的对象服务.
    可伸缩性: 由于面向连接的CORBA体系结构具有紧密结合的特征, 可能无法在企业应用程序中实现预期的的可伸缩性. 
    Web Service:
    定义
    根据Gartner研究所的定义, “Web服务是通过Internet标准技术(HTTP,SMTP,FTP)传递的, 松散耦合的软件组件”. 简言之, Web服务是自描述的模块化的业务应用程序, 它们通过可编程接口经由Internet将业务逻辑发布为服务, 并通过Internet协议来作查找, 订阅和调用这些服务. 
    Web服务是一种基于Web的应用程序, 可创建一种通用的平台, 以方便商业进程, 应用程序, 企业, 合作伙伴, 客房等之间的有效集成. 建立在XML标准和Internet协议基础上的Web服务是颁式计算的下一步发展方向. Web服务为那些由不同资源构建的商业应用程序之间的通信和协作带来了光明的前景, 从而使它们可以彼此协作, 而不受各自底层实现方案的影响. 
    基本特征
     Web服务基于XML消息交换, 因此Web服务提供商与用户之间交换的数据是以XML格式定义的.
     Web服务可提供通过Internet的业务应用程序跨平台的集成.
     要构建Web服务, 开发人员可以使用任何常用的编程语言, 及其现有的应用程序组件.
     Web服务不是处理HTML上下文那样处理表示形式的, 其开发目的是为了为XML赋予任何软件应用程序, 平台或者设备的统一的可访问性. 
     因为Web服务建立在松散耦合的应用程序组件之上, 所以每个组件都被发布为一个服务, 且具有唯一的功能. 
     Web服务使用HTTP这样的业务标准协议, 因此可以通过企业防火墙轻松访问. 
     Web服务可以被多种类型的客房端使用. 
     Web服务功能多样(从简单请示到涉及多个资源的复杂业务事务)
     所有平台(J2EE,CORBA, MS .NET)都可以很好地支持Web服务的创建和部署. 
     可以通过基于业务标准(UDDI和ebXML)的公共和私有注册表动态定位和调用Web服务. 
    意义
    WEB 服务可以穿越防火墙, 通过基于XML的RPC(remote procedure call)机制调用.
    Web 服务可以提供基于XML消息交换的, 跨平台, 跨语言的解决方案.
    Web服务可以使用轻量级结构简化应用程序集成, 而不会影响可伸缩性.
    Web服务可以实现异源(heterogeneous)应用程序之间的互操作. 
      

  7.   

    CORBA是紧耦合的,WebServices是松耦合的.更重要的是,WebServices是完全基于开放标准.而CORBA与DCOM之间都不能互连.CORBA效率高.但是它难以穿透防火墙.而WebServices的传输低层可以是HTTP,防火墙,网关等不会阻隔它.