Pres Corba
-
Author
jayachandran-gokul-r -
Category
Documents
-
view
219 -
download
0
Embed Size (px)
Transcript of Pres Corba
-
8/6/2019 Pres Corba
1/39
CORBA
-
8/6/2019 Pres Corba
2/39
2
IntroductionCORBA (Common Object RequestBroker Architecture) is a standard thatenables an object written in one
programming language, running on oneplatform to interact with objects acrossthe network that are written in otherprogramming languages and running onother platforms.
For example, a client object written inC++ and running under Windows cancommunicate with an object on a remotemachine written in Java running under
UNIX.
-
8/6/2019 Pres Corba
3/39
3
OMGThe CORBA specification was developedby the Object Management Group(OMG).
The OMG is an international, not-for-profit group consisting of approximately800 companies and organizationsdefining standards for distributed objectcomputing
CORBA is only one of the specificationsthey develop. They are also behind otherkey object oriented standards such asUML (Unified Modeling Language).
-
8/6/2019 Pres Corba
4/39
4
HistoryThe OMG was established in 1988 andthe initial CORBA specification came outin 1992. Over the past 10 years
significant revisions have taken place.
Version 2.0, which defined a commonprotocol for specifying howimplementations from different vendorscan communicate, was released in the
mid-nineties.
The current version of CORBA is 3.0,which introduced the CORBAComponent Model.
-
8/6/2019 Pres Corba
5/39
5
TodayToday, CORBA serves as middleware fora variety of large enterprise levelapplications.
One of the most important and mostfrequent uses is for servers that musthandle a large number of clients, at highhit rates, with high reliability.
The current users of CORBA are diverse- including The Weather Channel,GNOME, US Army, CNN, and CharlesSchwab.
-
8/6/2019 Pres Corba
6/39
-
8/6/2019 Pres Corba
7/39
7
CORBA IntegrationsAn implementation of CORBA has beenintegrated into Netscape browsers.
CORBA has been built into Netscape
ONE (Open Network Environment) -Netscapes application environmentbased on open internet standards.
The Enterprise Edition of IBMs
WebSphere (a software platform to helpbuild and deploy high performance websites) integrates CORBA (as well asEnterprise Java Beans) to build highlytransactional, high-volume e-business
applications
-
8/6/2019 Pres Corba
8/39
-
8/6/2019 Pres Corba
9/39
CORBACORBAArchitecture
-
8/6/2019 Pres Corba
10/39
Three-tierCORBAArchitecture
-
8/6/2019 Pres Corba
11/39
11
The Primary Elements IDL
Interface Definition Language
Client / Server CORBA Objects Abstract objects based upon a concrete
implementation
ORBs
Object Request Brokers GIOP / IIOP
General and Internet Inter-Object
Protocols
-
8/6/2019 Pres Corba
12/39
12
Interface Definition Language Defines public interface for any
CORBA server.
C++ like syntax
Client and Server implemented
based on compilation of the same
IDL (usually)
OMG has defined mappings for: C, C++, Java, COBOL, Smalltalk, ADA, Lisp,
Python, and IDLscript
-
8/6/2019 Pres Corba
13/39
13
Highlighted IDL Features
Pass by reference and by value
In, out, and inout parameters
Inheritance
Throwing of exceptions
The Any Type
Callbacks
Enables Peer-to-Peer Object
Communication. Also supports:
structs, unions, enumerations, all c++scalars, arrays, sequences, octets,strings, constants, and typedefs.
-
8/6/2019 Pres Corba
14/39
Steps to Write a CORBAObject
in Java
-
8/6/2019 Pres Corba
15/39
Client / ServerCORBAObjects
CORBA OBJECT
(abstract)
Implementation Object
(CORBA enabled)
Member Object
Local Server
Object
Local Server
Object
Implementation
-
8/6/2019 Pres Corba
16/39
16
Client / ServerCORBAObjectsCont.
Abstract Do not have their own implementation. The
elements of a CORBA object (interface,implementation, and location) are heldrendered via other elements.
Implemented via a Servant A servant is a block of code (usually an
instance of a class) which implements thepublic interface of the CORBA object.Depending on the server policies, there mayor may not be multiple instances of the
servant and it may or may not be multi-threaded.
Configured in code or at server startup Unlike COM+ and EJB the policies for a
CORBA object which control things such as
Security, threading, and persistence are notconsole configurable
-
8/6/2019 Pres Corba
17/39
17
Object Request Brokers
(Orbs) Responsible for all communication
Locating objects
Implementation specific
Known IOR(Inter-Object Reference) Naming and Trading Services( DSN-like)
Transferring invocations and returnvalues
Notifying other ORBs of hosted Objects
Must be able to communicate IDLinvocations via IIOP
If an ORB is OMG compliant, then it isinteroperable with all other OMGcompliant ORBs
-
8/6/2019 Pres Corba
18/39
18
AdditionalORBServices
Interface Repository
A Database of all of the IDL for compiled
objects running on the ORB Implementation Repository
A Database containing policy information
and the implementation details for the
CORBA objects running on the ORB
Load Balancing
Fail-over support
Security
-
8/6/2019 Pres Corba
19/39
-
8/6/2019 Pres Corba
20/39
20
Drawbacks
Lower Level than COM+/.NET/EJB
Configuration in Code
Steeper Learning Curve than other
solutions.
-
8/6/2019 Pres Corba
21/39
21
Object Management
Architecture(OMA) Center of all the activity
undertaken by OMG
OMA specifies a range ofarchitectural entities surroundingthe core ORB, which is CORBAproper
Detailed specifications for eachcomponent and interface categoryis populated in OMA referenceModel
-
8/6/2019 Pres Corba
22/39
OMAReferenceModel
-
8/6/2019 Pres Corba
23/39
23
CORBAServices
CORBA Services provides basic
functionality, similar to the services
that system library calls do inUNIX. Functions includes creating
objects, controlling access to
objects, keeping track of relocated
objects and to consistentlymaintain relationship between
objects.
-
8/6/2019 Pres Corba
24/39
24
HorizontalCORBA
Facilities Horizontal CORBA Facilities sit
between the CORBA services and
Application objects.T
hesecomponents providing supportacross an enterprise and acrossbusiness. Four facilities: thePrinting Facilities, the Secure Time
Facilities, the InternationalizationFacilities, and Mobile AgentFacilities.
-
8/6/2019 Pres Corba
25/39
25
Domain(Vertical) CORBA
Facilities Domain CORBA Facilities are the
most exciting work at OMG. Define
a standard interfaces for standardobjects shared by companies
within a specific vertical
market(e.g. healthcare,
manufacturing, finance). Now nineindustries have their own OMG
task force.
-
8/6/2019 Pres Corba
26/39
26
Application Objects
Topmost part of the OMA hierarchy.
Provide access to application objects
that can invoke methods on remoteobjects through ORB. Application is built
from a large number of basic object
classes, new classes can be generated
or specified provided by CORBA
services. Standardization is not required.
-
8/6/2019 Pres Corba
27/39
27
ThreeBenefits of using
OMA1. Coding is quicker, so application
can be deployed sooner
2. Applications designed arounddiscrete services have better
architecture
3. Many OMA implementations have
enterprise characteristics built in:
theyre robust, and they scale
-
8/6/2019 Pres Corba
28/39
28
CORBA vs. DCOM
DCOM supports an object-
oriented model, but differs
substantially from classical OOmodels. DCOM object provides
services through one or more
distinct interfaces.
DCOM is lack of polymorphism,instead, it constructs application
from binary components.
-
8/6/2019 Pres Corba
29/39
29
CORBA vs. DCOM
The major difference is CORBA is an
open specification. DCOM has the
potential to evolve at a faster rate than
CORBA because the politics will be
simpler.
CORBA can be deployed far more widely
than DCOM and runs in most current OS
environment, while DCOM is runningalmost exclusively in the Windows
environment.
-
8/6/2019 Pres Corba
30/39
30
CORBA vs. JAVA/RMI
Some overlap between these two,
both provide a viable means of
building distributed applications. CORBA is concerned with
interfaces between objects and
applications modeled as objects,
Java is primarily concerned withthe implementation of these
objects.
-
8/6/2019 Pres Corba
31/39
31
CORBA vs. JAVA/RMI
JAVA/RMI systems fall short ofseamless integration because of
their interoperability requirementswith other languages. JAVA/RMIsystem assumes thehomogeneous environment of theJVM, which can only take
advantage of Java Object Model. Coexistence between CORBA and
Java
-
8/6/2019 Pres Corba
32/39
32
The Future ofCORBA
Much easier for developers to build and
run client/server applications written in
different languages using the IDL
interface
Compute-domain benefits
Functionality the same as if written to
sockets or some other RPC device
Business-domain benefits
Allows rapid development of full service
website
-
8/6/2019 Pres Corba
33/39
33
Compute-DomainEnhancements
in traditionalbusiness Remote access to all network
systems for employees.
product descriptions pricing
stock
order placement
customer credit data
Business works smarter, notharder
-
8/6/2019 Pres Corba
34/39
34
Business-DomainEnhancementsfore-business
Builds on compute-domain work
add web functionality to existing internal
network uses CORBAs IDL to integrate new
processes
Development and maintenance ofcustomer centered e-commerce site is
still manageable for IT department. Gives business time to sell product, not
fix problems
-
8/6/2019 Pres Corba
35/39
35
Companies UsingCORBAToday AT&T
Late 1990s developed 20 to 40 systemsusing CORBA for both internal andexternal access
Are certain development time for futureprojects will be greatly reduced bybuilding reusable frameworks with theOMG
The Weather Channel Used CORBA and Linux
System is reliable, low maintenance,offers data logging
Cut software development time frommonths to weeks
-
8/6/2019 Pres Corba
36/39
36
Companies UsingCORBA
Today
Raytheon Company
Needed to update its complex real-time
distributed system
Built new system using C++ and CORBA
Ready to build next generation system
-
8/6/2019 Pres Corba
37/39
37
Companies with Plans to
Develop UsingCORBA Chase Manhattan Bank
Plans to develop wholesale banking service
Will use CORBA and Java-based middleware
Further plans to introduce Java-basedmortgage application service as well asintegration with third-party applicationspossibly by years end
Nokia Telecommunications Combining use of Orbix and CORBA to
continue enhancing products and managevalue added services based on a commonarchitecture.
-
8/6/2019 Pres Corba
38/39
38
NOKIA
Nokias decision [to use CORBA]
highlights the continuing adoption of
CORBA and is recognition of the fast,
effective, scaleable and open approach
to the development of powerful,
intelligent, mission-critical network
services that CORBA offers.
Colin Newman, VP Marketing at IONA
(Developers of the Orbix ORB)
-
8/6/2019 Pres Corba
39/39
39
References
www.oma.org
www.corba.org
developer.java.sun.com/developer/
onlineTraining/corba