首页 > 代码库 > 远程调用相关技术
远程调用相关技术
相关术语:
中间件:中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源。中间件位于客户机/ 服务器的操作系统之上,管理计算机资源和网络通讯。是连接两个独立应用程序或独立系统的软件。相连接的系统,即使它们具有不同的接口,但通过中间件相互之间仍能交换信息。执行中间件的一个关键途径是信息传递。通过中间件,应用程序可以工作于多平台或 OS 环境。
PRC:RPC(RemoteProcedureCall),是进程间通信(IPC,Inter-Process Communication)的一种技术,一般指不同机器上的进程间通信。在采用C等古老语言编程的时候,RPC被称作了对S端的“子程序”的调用,所以称“过程调用”。在OOP出现后,RPC也可以称为远程方法调用(RemoteMethodInvocation),或者远程调用(RemoteInvocation)。
关键词:(骨架,桩)Stub,ClientStub,ServerStub,ServerStub又叫Skeleton。
什么是Stub?
Stub是一段代码,用来转换RPC过程中传递的参数。处理内容包括不同OS之间的大小端问题。另外,Client端一般叫Stub,Server端一般叫Skeleton。
生产方式:1)手动生成,比较麻烦;2)自动生成,使用IDL(InterfaceDescriptionLanguate),定义C/S的接口。
交互机制标准:一般采用IDL,生成IDL的工具 RPCGEN()。
扩展资料:
http://wangqiaowqo.iteye.com/blog/1762585
http://www.cnblogs.com/xd502djj/archive/2010/07/21/1782414.html
几种基于HTTP协议的RPC:Axis(SOAP), Hessian(Binary), Burlap(XML-RPC), REST,Webservice
ICE:基于tcp/ip的直接通信,比更高层的http通信效率要高很多。
网络通信引擎(Internet Communications Engine, Ice)是由ZeroC的分布式系统开发专家实现的一种高性能、面向对象的中间件平台。它号称标准统一,开源,跨平台,跨语言,分布式,安全,服务透明,负载均衡,面向对象,性能优越,防火墙穿透,通讯屏蔽。因此相比CORBA,DCOM,SOAP,J2EE等的中间件技术,自然是集众多优点于一身,而却没有他们的缺点。
Ice是一种面向对象的中间件平台,从根本上说,这意味着Ice为构建面向对象的客户/服务器模式的应用提供了工具、应用程序接口(API)和库支持。