既上一遍,看到还有一遍将关于 对象的, 分布式对象, 故摘抄入下:

目前国际上,分布式对象技术有三大流派——COBRA、COM/DCOM和Java。CORBA技术是最早出现的,1991年OMG颁布了COBRA 1.0标准,在当时来说做得非常漂亮;再有就是Microsoft的COM系列,从最初的COM发展成现在的DCOM,形成了Microsoft一套分布式对象的计算平台;而Sun公司的Java平台,在其最早推出的时候,只提供了远程的方法调用,在当时并不能被称为分布式对象计算,只是属于网络计算里的一种,接着推出的JavaBean,也还不足以和上述两大流派抗衡,而其目前的版本叫J2EE,推出了EJB,除了语言外还有组件的标准以及组件之间协同工作通讯的框架。于是,也就形成了目前的三大流派。

---- 应该说,这三者之中,COBRA标准是做的最漂亮的。COBRA标准主要分为3个层次:对象请求代理、公共对象服务和公共设施。最底层是对象请求代理ORB,规定了分布对象的定义(接口)和语言映射,实现对象间的通讯和互操作,是分布对象系统中的“软总线”;在ORB之上定义了很多公共服务,可以提供诸如并发服务、名字服务、事务(交易)服务、安全服务等各种各样的服务;最上层的公共设施则定义了组件框架,提供可直接为业务对象使用的服务,规定业务对象有效协作所需的协定规则。总之,CORBA的特点是大而全,互操作性和开放性非常好。目前CORBA的最新版本是2.3。CORBA 3.0也已基本完成,增加了有关Internet集成和QoS控制等内容。CORBA的缺点是庞大而复杂,并且技术和标准的更新相对较慢,COBRA规范从1.0升级到2.0所花的时间非常短,而再往上的版本的发布就相对十分缓慢了。

---- 相比之下,Java标准的制订就快得多,Java是Sun公司自己定的,演变的很快。Java的优势是纯语言的,跨平台性非常好。Java分布对象技术通常指远程方法调用(RMI)和企业级JavaBean(EJB)。RMI提供了一个Java对象远程调用另一Java对象的方法的能力,与传统RPC类似,只能支持初级的分布对象互操作。Sun公司于是基于RMI,提出了EJB。基于Java服务器端组件模型,EJB框架提供了像远程访问、安全、交易、持久和生命期管理等多种支持分布对象计算的服务。目前,Java技术和CORBA技术有融合的趋势。

---- COM技术是Microsoft独家做的,是在Windows 3.1中最初为支持复合文档而使用OLE技术上发展而来,经历了OLE 2/COM、ActiveX、DCOM和COM+等几个阶段,目前COM+把消息通讯模块MSMQ和解决关键业务的交易模块MTS都加进去了,是分布对象计算的一个比较完整的平台。Microsoft的COM平台效率比较高,同时它有一系列相应的开发工具支持,应用开发相对简单。但它有一个致命的弱点就是COM的跨平台性较差,如何实现与第三方厂商的互操作性始终是它的一大问题。从分布对象技术发展的角度来看,大多数人认为COM竞争不过COBRA。

三种分布式对象主流技术——COM、Java和COBRA的更多相关文章

  1. Apache Spark探秘:三种分布式部署方式比较

    转自:链接地址: http://dongxicheng.org/framework-on-yarn/apache-spark-comparing-three-deploying-ways/     目 ...

  2. 基于Redis的三种分布式爬虫策略

    前言: 爬虫是偏IO型的任务,分布式爬虫的实现难度比分布式计算和分布式存储简单得多. 个人以为分布式爬虫需要考虑的点主要有以下几个: 爬虫任务的统一调度 爬虫任务的统一去重 存储问题 速度问题 足够“ ...

  3. 三种LVS负载均衡技术的优缺点----负载均衡调度算法

    三种LVS负载均衡技术的优缺点归纳以下表: VS/NATVS/TUNVS/DR 服务器操作系统任意支持隧道多数(支持Non-arp) 服务器网络私有网络局域网/广域网局域网 服务器数目(100M网络) ...

  4. C#中三种定时器对象的比较 【转】

    https://www.cnblogs.com/zxtceq/p/5667281.html C#中三种定时器对象的比较 ·关于C#中timer类 在C#里关于定时器类就有3个1.定义在System.W ...

  5. 三种分布式锁 简易说说(包含前一篇提到的redis分布式锁)

    大多数互联网系统都是分布式部署的,分布式部署确实能带来性能和效率上的提升,但为此,我们就需要多解决一个分布式环境下,数据一致性的问题. 当某个资源在多系统之间,具有共享性的时候,为了保证大家访问这个资 ...

  6. LVS集群中实现的三种IP负载均衡技术

    LVS有三种IP负载均衡技术:VS/NAT,VS/DR,VS/TUN. VS/NAT的体系结构如图所示.在一组服务器前有一个调度器,它们是通过Switch/HUB相连接的.这些服务器 提供相同的网络服 ...

  7. 基于ZooKeeper的三种分布式锁实现

    [欢迎关注公众号:程序猿讲故事 (codestory),及时接收最新文章] 今天介绍基于ZooKeeper的分布式锁的简单实现,包括阻塞锁和非阻塞锁.同时增加了网上很少介绍的基于节点的非阻塞锁实现,主 ...

  8. 三种执行SQL语句的的JAVA代码

    问题描述: 连接数据库,执行SQL语句是必不可少的,下面给出了三种执行不通SQL语句的方法. 1.简单的Statement执行SQL语句.有SQL注入,一般不使用. public static voi ...

  9. C#中三种定时器对象的比较

    ·关于C#中timer类 在C#里关于定时器类就有3个1.定义在System.Windows.Forms里2.定义在System.Threading.Timer类里3.定义在System.Timers ...

随机推荐

  1. nginx源代码分析之内存池实现原理

    建议看本文档时结合nginx源代码. 1.1   什么是内存池?为什么要引入内存池? 内存池实质上是接替OS进行内存管理.应用程序申请内存时不再与OS打交道.而是从内存池中申请内存或者释放内存到内存池 ...

  2. Maven 入门指南

    为什么要用 Maven? Maven 主要帮助用户完成以下 3 个方面的工作: 生命周期管理,便捷的构建过程: 依赖管理,方便引入所需依赖 Jar 包: 仓库管理,提供统一管理所有 Jar 包的工具: ...

  3. 随机蕨(Random Fern)

    最近在做 Zdenek Kalal 的 TLD 算法,其成果发表在CVPR 2010 上,文章的名字叫做 P-N Learning: Bootstrapping Binary Classifiers ...

  4. 解决使用Properties读取中文乱码问题

    web服务返回的是多行以key和value对应的键值对,且编码为utf-8.我的项目使用的编码也是utf-8,但是我用Properties读取中文的时候,打印出来的总是乱码. 后来网上查了一下,得到如 ...

  5. 用eclipse 玩转cocos 2dx开发

    开始研究cocos2dx,mark一下这个的配置步骤 1 下载eclipse      2 下载android sdk,配置sdk路径,添加环境变量 3 安装adt 4 下载android ndk,配 ...

  6. Laravel 5 中使用 JWT(Json Web Token) 实现基于API的用户认证

    在JavaScript前端技术大行其道的今天,我们通常只需在后台构建API提供给前端调用,并且后端仅仅设计为给前端移动App调用.用户认证是Web应用的重要组成部分,基于API的用户认证有两个最佳解决 ...

  7. MySQL 常用函数之——substr()

    substr()函数是用来截取数据库某一列字段中的一部分 常用的方式是: SBUSTR(str,pos); 就是从pos开始的位置,一直截取到最后. SUBSTR(str,pos,len); 这种表示 ...

  8. Medline Plus

    提问地址: http://apps2.nlm.nih.gov/medlineplus/contact/index.cfm?lang=en&from=http://www.nlm.nih.gov ...

  9. Docker container常用命令

    列出所有的container. docker container ls 启动一个container. docker run –p <host端口>: <container端口> ...

  10. 抽屉柜式MCC柜中PROFIBUS设备推荐波特率及相应传输距离

    抽屉柜式MCC柜中PROFIBUS设备推荐波特率及相应传输距离.例如以下图所看到的: watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L ...