发信人: crazyjava()
整理人: majorsun(2000-02-17 19:22:30), 站内信件
|
CORBA
The third remote-computing alternative available to you is
the CORBA. Despite its name, CORBA is not an ORB. CORBA is
a documents, a standard developed, and agreed to, by the
over 700 members of OMG. The standard was developed to make
sure ORBs created by one vendor would work (interoperate)
with ORBs created by another. After all, what's the point in
having distributed objects if all the machines have to be
running the same ORB? It would be like having the WWW divided
up into fiefdoms where those running Microsoft's browsers
could only contact sites that use Microsoft's servers, and
Netscape's browsers were limited to accessing only
Netscape-controlled sites. The beauty of HTTP and the Web
is that it makes no difference which browser or server you
are using; they can all interoperate by following the
standards. What HTTP does for the WWW, CORBA attempts to do
for distributed objects.
The CORBA standard has 3 main elements:
1) IIOP 2) IDL 3) System services and facilities.
IIOP enables your objects to interact across a network, using
an ORB. IIOP forms an object bus that can link your objects
and ORBs into systems, much the same way that the hardware bus
in your personal computer links the RAM memory, the CPU, and
expansion card. IIOP is analogous to HTTP.
IDL allows you to describe the interface of an object,
regardless of its implementation language. By using IDL to
describe the interface of an object and then plugging that
object into the object bus with IIOP, you can make your
object's methods available to any other object on the bus.
You can also use IDL to encapsulate (or wrap) an
non-objct-oriented legacy system, so that its data and
behavior can be made available via the object bus. Even
database sotred procedures can be described using IDL.
The CORBA system services and common facilities provide
general-purpose functionality to objects traveling o CORBA's
IIOP bus. One example is the interface repository, implemented
as a distributed database, that contains IDL descriptions of
all the objects on the bus. Using the repository, your objects
can discover and use servers without being aware of the server
locations at runtime. CORBA provides many other services and
facilities, including a security service that supports
authentication and access control lists.
CORBA has a number of advantages:
1) It's much easier to use than sockets.
2) It enables access to software, including so-called legacy
systems, running on a variety of platforms.
3) It is an open standard, supported by many vendors and many
products.
4) It scales well, enabling the construction of large system.
Well, if CORBA's so great, why would you choose to use some
other method, instead of CORBA? The most likely reason would
be cost. Sockets, RMI, and DCOM are free, but acquiring a ORB
will cost you a bit. The cost is not high, however, relative
to the labor costs of software construction. Whereas the cost
of an ORB might tip the balance against CORBA for your own
experimentation, it is less likely to be a factor in deciding
whether to use CORBA to implement a "real" information system.
/Crazyjava
-- 孤身走我路...
其实,路,两个人一起走比一个人要好。
email: [email protected]
※ 修改:.crazyjava 于 Jul 30 17:09:37 修改本文.[FROM: 139.87.93.173] ※ 来源:.月光软件站 http://www.moon-soft.com.[FROM: 139.87.93.173]
|
|