

Into
Orbit
By Anthony Frey
Are object request brokers (ORBs) ready to fly? Since their introduction, ORBs have proven to be an effective alternative to remote procedure call (RPC) and message-oriented middleware. Yet it remains for ORBs to prove themselves in the enterprise--and on the network--with regard to the practical details of management, performance and security.
To view the Report card.
Few would argue that the distributed computing model for client/server applications i
n the next century will be object based. Since 1991, the Object Management Group (OMG) has proclaimed that the Common Object Request Broker Architecture (CORBA) is the technically superior distributed object model. Vendors are already marketing second-generation CORBA-based ORBs.
Microsoft Corp.'s proposed Distributed Component Object Model (DCOM) also vaunts the promise of distributed objects. But right now DCOM has virtually no cross-platform support, severely crippling its ability to integrate with back-end mission-critical resources running on mainframe, VMS and Unix systems. It's also brand new, which means it has no track record on which you can base a strategic networking decision.
So what's here to launch us into the 21st century? We launched five ORBs in our lab at the University of Wisconsin in Madison: Digital Equipment Corp.'s ObjectBroker, Expersoft's PowerBroker, Hewlett-Packard Co.'s ORB Plus, IONA Technologies' Orbix and Visigenic Software's VisiBroker for C++. (ICL Dais and Sun Micros
ystems expressed interest in participating in our testing, but their products--DiaLogos and NEO, respectively--were between revisions and couldn't meet our testing deadlines. We hope to take a look at them in the near future.)
Through our tests we wanted to determine the extent of cros
s-vendor interoperability and find out if ORBs are easy to manage and use. What we found is that ORBs are ready to start building on, but they still lack sufficient system services (such as naming and transactions) and integration with existing networks to make them deployable.
Notwithstanding the incompleteness of ORBs as a whole, we think ObjectBroker and Orbix stand out as the best among the products we tested. They're solid ORBs that will let you get a jump on distributed object computing. VisiBroker, PowerBroker and ORB Plus, however, need some time to ripen.
3, 2, 1...Launch!
The notion of clients and servers in an ORB environment is an entirely logical distinction.
There is no specific "client" software and no specific "server" software. Objects are simply written to make requests, accept requests or both. As a result, the ORB itself typically needs to be installed on every host. Although the products we tested were full-development versions that had the Interface Definition Language (IDL) compiler and associated header files necessary for language mapping, you'll probably need to install only the ORB, the Interface Repository and the Implementation Repository that are included in run-time versions.
We encountered no disturbances during the ORB installation process, which is really quite simple, since most ORBs are implemented as one or two individual daemon processes (or services under Microsoft Windows NT) and a set of libraries. We were pleasantly surprised at how little configuration was necessary to get the ORBs up and running. The three Solaris ORBs--Orbix, VisiBroker and PowerBroker--were quite similar in their implementation and configuration. Even under Un
ix, where command-line switches are common, the ORBs in most cases could be executed without any configuration at all. When configuration was necessary, it required little more than defining the paths to the Interface and Implementation Repository data files and changing the TCP/IP port on which the
ORB service listened.
Configuring Digital's ObjectBroker under Windows NT was somewhat tedious because of Digital's more complete implementation of CORBA contexts and security. The security services in ObjectBroker support trusted, DECnet (on OpenVMS) and Distributed Computing Environment (DCE)-based authentication (including Kerberos) and three forms of authorization. This is not, however, an implementation of the CORBAservices security specification.
|