CORBA (Common Object Request Broker Architecture) is a standardized way to specify how different applications (on the same or different machines) can call upon the services of database objects (see database and object-oriented programming). The CORBA standard is defined by the Object Management Group (OMG), a consortium of more than 700 companies or organizations, including the major players in distributed database technology.
Structure and Usage
Creating a CORBA application involves three basic steps. First, specifications are provided using an interface defini-tion language (IDL) that specifies in generic terms what services an object will provide. An IDL compiler then cre-ates a “skeleton” interface that the developer can fill in with actual code for a class for that object in a programming lan-guage (such as Java).
To use CORBA, a client application accesses an Object Request Broker (ORB), which is software that locates the referenced object on the network (thus the program does not need to know or keep track of specific locations). The ORB sends the request to the object, which processes it and returns the results, which are then sent back to the client application.
The intent of CORBA is to make objects implemented by different vendors fully interoperable (able to call one another using the same syntax). While CORBA 1.0 did not completely meet this goal, CORBA 2.0 explicitly provided for a protocol called IIOP (Internet Inter-ORB Protocol) that, if adhered to, does make brokers (ORBs) and objects interoperable across vendors and programming languages. CORBA 3 adds a new CORBA Component Model (CCM) and specifications that, among other things, provide for better negotiation with firewalls, a problem that had made CORBA hard to use in Web development.
Corba Services
In addition to the interfaces defined for particular objects, CORBA provides a number of services that apply to all objects. These services include creating, moving/copying, or removing objects; allowing more readable names for objects; concurrency and transaction control; setting prop-erties for objects; and sending queries to objects.
A competing framework for distributed object comput-ing is COM/DCOM (Common Object Model/Distributed Common Object Model, now supplanted by .NET (see Microsoft.net). A simpler (though possibly less secure) way to connect programs running on different machines is to use the Simple Object Access Protocol (see soap).
No comments:
Post a Comment