对象请求代理

Object Request Broker

 

 

ORBs assumed to handle the transformation of in-process data structures to and from the raw byte sequence, which is transmitted over the network. This is called marshalling or serialization. In addition to marshalling data, ORBs often expose many more features, such as distributed transactions, directory services or real-time scheduling. Some ORBs, such as CORBA-compliant systems, use an interface description language to describe the data that is to be transmitted on remote calls.In object-oriented languages (.e.g. java), an ORB actually provides a framework which enables remote objects to be used over the network, in the same way as if they were local and part of the same process. On the client side, so-called stub objects are created and invoked, serving as the only part visible and used inside the client application. After the stub’s methods are invoked, the client-side ORB performs the marshalling of invocation data, and forwards the request to the server-side ORB. On the server side, ORB locates the targeted object, executes the requested operation, and returns the results. Having the results available, the client’s ORB performs the demarshalling and passes the results back into the invoked stub, making them available to the client application. The whole process is transparent, resulting in remote objects appearing as if they were local.

对象请求代理

假设 ORB 处理进程内数据结构与原始字节序列之间的转换,原始字节序列通过网络传输。这称为封送或序列化。除了编组数据之外,ORB 通常还具有更多功能,例如分布式事务、目录服务或实时调度。某些 ORB(如符合 CORBA 标准的系统)使用接口描述语言来描述要在远程呼叫中传输的数据。在面向对象语言 (.e.g. java) 中,ORB 实际上提供了一个框架,它允许远程对象通过网络使用,就像它们是本地的并且是同一进程的一部分一样。在客户端,创建和调用所谓的存根对象,作为客户端应用程序中唯一可见和使用的部分。调用存根的方法后,客户端 ORB 执行调用数据的封送处理,并将请求转发到服务器端 ORB。在服务器端,ORB 定位目标对象,执行请求的操作,并返回结果。结果可用后,客户端的 ORB 执行解组并将结果传递回调用的存根,使其可供客户端应用程序使用。整个过程是透明的,导致远程对象看起来好像是本地的。

posted @   不会JAVA的小袁  阅读(2)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
点击右上角即可分享
微信分享提示