Common Object Request Broker Architecture (CORBA)

Download Report

Transcript Common Object Request Broker Architecture (CORBA)

Common Object Request Broker
Architecture (CORBA)
Object Request Broker (ORB)
 fundamental part of the CORBA
 ORB is the distributed service that implements the
request to the remote object.
 Help a client to invoke a method on an object.
Object Request Broker (ORB)
 The ORB is responsible for:
i.
ii.
iii.
iv.
Data marshaling
Object location management
Delivering request to objects
Returning output values back to client
What is CORBA ?
 Middleware design that allows application programs to
communicate with one another irrespective of their
programming language, hardware, software, networks
they communicate over and implementors.
 Object-oriented programming
 Objects are accessible through interface only
 Allows objects to transparently make requests and
receive responses
 CORBA is location transparent
i.
in different process on another processor
ii. on the same processor, in a different process
iii. on the same processor and even in the same process
Architecture of CORBA
Architecture of CORBA
 3 additional components :
Object adapter
ii. Implementation repository
iii. Interface repository
i.
Interface Definition Language (IDL)
 Is the language used to define interfaces between
application components.
 Applications are not programmed in IDL.
 IDL is not a procedural language; it can define
only interfaces, not implementations.
 Provides facilities for defining modules, interfaces,
types, attributes and method signatures.
Language Mapping
 Are basic for actual implementation of the object in
the respective programming language
 Primitive types in IDL are mapped to the
corresponding primitive types in Java.
 Holder classes are provided for parameter passing
semantics of IDL onto those of Java.
IDL Type
Java Type
short, unsigned short
short
boolean
boolean
char, wchar
char
long long, unsigned long long
long
Portable Object Adapter (POA)
 CORBA 2.2 standard for object adapters is called POA.
 Portable – allows applications and servants to be run on ORBs
produced by different developers.
Advantages of CORBA
 Can deal with heterogeneous systems
 CORBA is a mature technology, support and tools are
widely available
 CORBA allows methods on a remote object to be
accessed as if they were on the local machine
Design Features
Transparency
• Hides inherent difficulties of distributed
computing
• All object calls appear to be local invocations
Platform
Independence
• IDL can be compiled into a variety of target
programming language and platforms
• Connect all software object from heterogeneous
environment
Portability
• Porting of applications is possible because
CORBA standardizes the interfaces visible from
the application layer
Design Features (cont..)
Software
reuse
Integration
Interoperability
• Avoid unnecessary development costs
• Because CORBA provides the means to access all
objects flexibly across platform and programming
language boundaries
• E.g.: a Java front end in a Web browser can use
information from a UNIX-based back-end
customer database
• All compliant CORBA products should be
interoperated
Design Features (cont..)
Flexibility
• Mechanism-independent
• Able to integrated objects from any
platform and underlying technology
Location
Transparency
• Support mobile applications
• Wireless environments with mobile devices
where servers change their location often
Scalability
• Support environment with large number of
objects and users
The End…