- Object request broker
-
In distributed computing, an object request broker (ORB) is a piece of middleware software that allows programmers to make program calls from one computer to another via a network. ORBs promote interoperability of distributed object systems because they enable users to build systems by piecing together objects from different vendors, so that they communicate with each other via the ORB.
ORBs handle the transformation of in-process data structures to and from the byte sequence, which is transmitted over the network. This is called marshalling or serialization.
Some ORBs, such as CORBA-compliant systems, use an Interface Description Language (IDL) to describe the data that is to be transmitted on remote calls.
In addition to marshalling data, ORBs often expose many more features, such as distributed transactions, directory services or real-time scheduling.
In object-oriented languages, the ORB takes the form of an object with methods enabling connection to the objects being served. After an object connects to the ORB, the methods of that object become accessible for remote invocations. The ORB requires some means of obtaining the network address of the object that has now become remote. The typical ORB also has many other methods.
Implementations
- CORBA - the Common Object Request Broker Architecture.
- Ice - the Internet Communications Engine
- .NET Remoting - object remoting library within Microsoft's .NET Framework
- Windows Communication Foundation
- ORBexpress - Real-time and Enterprise ORBs by Objective Interface Systems
- Orbix - An Enterprise-level CORBA ORB from IONA Technologies
- DCOM - the Distributed Component Object Model from Microsoft
- RMI - the Remote Method Invocation Protocol from Sun Microsystems
- RPC - Remote Procedure Call
- SANKHYA Varadhi - High Performance ORBs by Sankhya Technologies
- SimpleORB - a small, non-CORBA ORB
- ORBit - an open-source CORBA ORB used as middleware for GNOME
- OmniORB - a CORBA-compliant ORB released under the GPL
- opalORB - a CORBA implementation completely written in Perl.
- The ACE ORB - a CORBA implementation from the Distributed Object Computing (DOC) Group
- TIDorb - an open-source CORBA ORB from Telefonica I+D
See also
This article related to a type of software is a stub. You can help Wikipedia by expanding it. This network-related software article is a stub. You can help Wikipedia by expanding it.