分布式开发技术

分布式开发技术的发展

CORBA(分布式开发的鼻祖,是属于所有语言都可以实现的技术)

这是最初最古老的的分布式开发架构技术,在我国90年代的时候一些分布式的系统,就是使用CORBA写出来的,后来由SUN公司发布了一项属于自己的分布式开发技术:RMI(性能很差但是这个技术的实现形式和Dubbo是最相似的)

RMI(Remote Method Invoke),远程方法调用

RMI 是一种计算机之间对象互相调用对方函数,启动对方进程的一种机制,使用这种机制,某一台计算机上的对象在调用另一台计算机上的方法时,使用的程序语法规则和在本地机上对象间的方法调用的语法规则一样

RMI 的处理里面有2个非常重要的概念,就是存根和骨架。可以简单的理解为:RMI 技术依然借助于接口定义完成,客户端拥有接口定义形式(远程方法视图),客户端通过这个远程接口就可以知道所有可以使用的方法有哪些。后来随着 JDK 版本的不断提升,那么服务端的骨架会自动的进行生成处理。

不过由于 RMI 这个技术使用非常的小众,所以并没有发展起来。后来经过不断的技术创新,在 RMI 基础之上又结合了 CORBA 我们形成了后来的 EJB 技术,而在 EJB 技术里面真正提出了业务中心的概念,也就是说结合 会话Bean 和 实体Bean 进行业务中心的定义,不过由于整个 EJB 的设计体系过于庞大,就导致 EJB 技术的技术成本很高,所以不得不放弃,后面才有现在大家所熟悉的 SSH 等框架开发阶段。

但是在我们这个行业之中,对于分布式开发的需求是一直存在的,尤其是到了 .net大力发展的时代,很多的开发者为了融合 J2EE 和 .net 体系的完美对接,后来推出了 WebService 的技术。

WebService

WebService 的好处是使用了 XML 作为数据交换,可以整合所有的技术平台。但是缺点就一个 慢,非常慢的执行! WebService进行处理的时候 往往结合一些 WEB 容器 去实现。
而要知道 WebService 的实现框架 Axls、Xfire、CXF 等开发框架是一个不断发展的过程。

现在依然有许多开发公司使用 CXF 的开发技术进行开发,并且 CXF 后续有了一个 jersey(Rest架构)。

后来在 WebService 上继续进行了技术的革新,产生了一个 SOA 的概念,而后又同时出现了 ESB 的概念,整合所有的应用。不过这个SOA的概念,炒作了大概几年之后,也就很少听见了。

那么再随后的技术发展就发展到了现在经常听见的 Restful 架构,利用 JSON 或 XML 实现数据的一个交换处理,这样的好处是可以更多的避免 WebService 所带来的性能问题,在很多的开源项目中被大量的采用。

总结

综上所述,我们会发现实际上不管分布式的技术如何的发展,那么总体而言有2种形式:

  • 基于远程接口的实现技术:RMI、EJB、Dubbo
  • 基于平台的交换技术(基于XML或JSON):WebService、Rest架构

你可能感兴趣的:(分布式,分布式,技术)