分布式应用程序框架common api中有个重要类stub
时间: 2024-03-28 11:39:04 浏览: 15
是的,分布式应用程序框架common api中的stub类是一个重要的类。在分布式应用程序中,stub类是客户端和服务端之间的中间件。它充当了客户端和服务端之间交互的代理,隐藏了底层的网络和协议细节,使得客户端可以像调用本地对象一样调用远程对象。在实现过程中,stub类将客户端的方法调用转换为网络消息,并将其发送到服务端。服务端接收到消息后,再将其转化为方法调用,并调用相应的方法。通过stub类的使用,客户端和服务端之间可以实现透明的远程调用,从而方便了分布式应用程序的开发和部署。
相关问题
common api中 proxy 和stub是什么概念?
在 Common API 中,Proxy 和 Stub 是用于实现远程过程调用(RPC)的概念。
Proxy 是客户端程序中的本地对象,它代表了远程对象,并负责将客户端的调用转发到远程对象上。当客户端调用 Proxy 上的方法时,Proxy 会将调用打包成请求并通过网络发送给远程对象。
而 Stub 则是在服务器端的本地对象,它代表了远程对象在服务器端的实现,并负责接收客户端的请求并将其解包后转发给远程对象。当远程对象处理完请求后,Stub 会将结果打包并通过网络返回给客户端。
通过使用 Proxy 和 Stub,客户端程序可以像调用本地对象一样调用远程对象,从而隐藏了网络通信的复杂性,使得分布式系统的开发变得更加简单。
在 EJB 中有 Stub 类与 Skeleton 类,在 DCOM 和 CORBA 中也有类似机智。.试比较这3 种框架在该机制上的异同。
这三种框架都是用于实现分布式应用程序的通信机制,其中 Stub 类与 Skeleton 类主要用于实现远程方法调用(Remote Method Invocation,RMI);DCOM 和 CORBA 中的类似机制也是用于远程方法调用。
异同点如下:
1. EJB 中的 Stub 类与 Skeleton 类是在 Java 中实现的,而 DCOM 和 CORBA 则是用 C++ 实现的。
2. 在 EJB 中,Stub 类主要负责将客户端的请求通过网络传送给远程服务器上的 Skeleton 类,而 Skeleton 类则负责接收请求并将其转发给相应的 EJB 组件。而在 DCOM 和 CORBA 中,Stub 类和 Skeleton 类的作用也类似,但是 Stub 类主要负责将客户端请求序列化为二进制数据,Skeleton 类则负责将二进制数据反序列化为方法调用。
3. 在 EJB 中,Stub 类和 Skeleton 类是自动生成的,开发人员不需要显式地编写它们;而在 DCOM 和 CORBA 中,需要手动编写 Stub 类和 Skeleton 类。
4. 在 EJB 中,Stub 类和 Skeleton 类的生成是由 EJB 容器负责的,而在 DCOM 和 CORBA 中,则需要使用相应的工具来生成 Stub 类和 Skeleton 类。
总之,这三种框架的 Stub 类和 Skeleton 类都是用于实现远程方法调用的机制,但是它们在实现方式和语言上有所不同。