SlideShare a Scribd company logo
1 of 25
NADAR SARASWATHI COLLEGE OF ARTS &
SCIENCE,THENI.
DEPARTMENT OF CS & IT
DISTRIBUTED COMPUTING
PRESENTED BY
G.KAVIYA
M.SC(IT)
TOPIC:CORBA, DCOM
SYNOPSIS:
CORBA:
• Introduction.
• CORBA includes four
components.
• Pre-CORBA Approach to
Client/Server Development.
• CORBA Approach to
Client/Server Development.
• Interface definition
language(IDL)
DCOM:
• What is DCOM (Distributed
Component Object Model)?
• Dynamic Data Exchange
• How Does DCOM Work?
• DCOM Architecture
• DCOM vs. CORBA
CORBA:
• Introduction
• CORBA includes four components.
• Pre-CORBA Approach to Client/Server Development
• CORBA Approach to Client/Server Development.
• Interface definition language(IDL).
CORBA
INTRODUCTION:
 The Common Object Request Broker architecture (CORBA) is a standard
developed by the Object Management Group (OMG) to provide interconnectivity
among distributed objects.
 CORBA is the world’s leading middleware solution enabling the exchange of
information, independent of hardware platforms, programming languages, and
operating systems.
 CORBA is essentially a design specification for an Object Request Broker
(ORB), where an ORB provides the mechanisms required for distributed objects
to communicate with one another, whether locally or on remote devices, written
in different languages, or at different locations on a network.
CONTINUE;
 The CORBA Interface Definition Language, or IDL, allows the development of
language and locations-independent interfaces to distributed objects.
 Using CORBA, application components can communicate with one another no
matter where they are located, or who has designed them.
 CORBA provides the location transparency to be able to execute these
applications.
 CORBA is frequently described as a “software bus” because it is a software-
based communications interface through which objects are located and
accessed. The for example below identifies the primary components seen within
a CORBA implementation.
CONTINUE;
• Data communication from client to
server is accomplished through a well-
defined object-oriented interface.
• The Object Request Broker (ORB)
determines the location of the target
object, send a request to that object, and
returns any response back to the caller.
• Through this object-oriented
technology, developers can take
advantage of features such as
inheritance, encapsulation,
polymorphism, and runtime dynamic
binding.
CONTINUE;
• These features allow applications to
be changed, modified and re-used
with minimal changes to the parent
interface.
• For Example below identifies how a
client sends a request to a server
through the ORB;
CORBA includes four components:-
Object Request Broker(ORB)
CORBA server
Naming service
CORBARequest node
Object Request Broker(ORB):-
The Object Request Broker (ORB) handles the communication,
marshaling, and unmarshaling of parameters so that the parameter handling is
transparent for a CORBA server and client applications.
CONTINUE;
CORBA server:-
The CORBA server creates
CORBA objects and initializes them with
an ORB. The server places references to
the CORBA objects inside a naming
service so that clients can access them.
Naming service:-
The naming service holds
references to CORBA objects.
CORBARequest node:-
The CORBARequest node acts
as a CORBA client.
Pre-CORBA Approach to
Client/Server Development:-
In Client/server computing, an
application consists of two parts:
The client application and the
server application. These two
applications a typically run on different
machines, connected by a network.
The client application makes requests
for information or services and
typically provides users with a means
to display results.
The key advantages of
client/server model are:
 Computing functions run on the
most appropriate machine system.
 Developers can balance the load
of application processing among
several servers.
 Server applications can be shared
numerous client applications.
CORBA Approach to Client/Server
Development:-
The CORBA model provides a more
flexible approach to developing distributed
application.
The CORBA model:
• Formally separates the client and sever
portions of the application.
The client application asks for the server
application to accomplish the task.
• Logically separates an application into
objects that can perform certain tasks,
called operations.
INTERFACE DEFINITION LANGUAGE(IDL)
 A foundation of the COBRA standards is the Interface Definition Language .
 IDL is the OMG standard for defining language – neutral APIs and provides the
platform-independent delineation of the interfaces of distributed objects.
 The ability of the COBRA environments to provide consistency between clients
and serves in heterogeneous environments begins with a standardized
definition of the data and operations constituting the client/sever interface .
 IDL defines the modules ,interfaces and operations for the applications and is
not considered a programming language. The various programming languages ,
such as Ada ,C++, C# , Java ,supply the implementation of the interface via
standardized IDL mappings.
The basic steps for CORBA development can be seen in the
following Example:
An overview of how the IDL is translated to the corresponding language (in this
example C++), mapped to the source code , complied, and then linked with the ORB
library, resulting in the client and server implementation.
DCOM
• What is DCOM (Distributed Component Object Model)?
• Dynamic Data Exchange
• How Does DCOM Work?
• DCOM Architecture :
• DCOM vs. CORBA
WHAT IS DCOM (DISTRIBUTED
COMPONENT OBJECT MODEL)?
• DCOM is a programming construct that allows a computer to run programs over
the network on a different computer as if the program was running locally.
DCOM is an acronym that stands for Distributed Component Object Model.
DCOM is a proprietary Microsoft software component that allows COM objects
to communicate with each other over the network.
• An extension of COM, DCOM solves a few inherent problems with the COM
model to better use over a network:
Marshalling.
Distributed garbage collection.
Using DCE/RPC as the underlying RPC mechanism
CONTINUE;
CONTINUE;
• Marshalling:
Marshalling solves a need to pass data from one COM object instance to
another on a different computer – in programming terms, this is called “passing
arguments.” For example, if I wanted Zaphod’s last name, I would call the COM
Object Last-name with the argument of Zaphod. The Last-name function would
use a Remote Procedure Call (RPC) to ask the other COM object on the target
server for the return value for Last-name(Zaphod), and then it would send the
answer – Beeblebrox – back to the first COM object.
CONTINUE;
• Distributed Garbage Collection:
Designed to scale DCOM in order to support high volume internet
traffic, Distributed Garbage Collection also addresses a way to destroy and
reclaim completed or abandoned DCOM objects to avoid blowing up the memory
on webservers. In turn, it communicates with the other servers in the transaction
chain to let them know they can get rid of the objects related to a transaction.
• Using DCE/RPC as the underlying RPC mechanism:
To achieve the previous items and to attempt to scale to support
high volume web traffic, Microsoft implemented DCE/RPC as the underlying
technology for DCOM – which is where the D in DCOM came from.
(DCOM) both object and component paradigm consists of a number of issues.
1.Interoperability
2. Versioning
3. Language independence
4. Size and complexity of system
Dynamic Data Exchange :
Dynamic Data Exchange or DDE, used to be designed for Microsoft
Windows to enable applications to exchange information of any specific type. As DDE
protocol is actually a little complicated and this complexity used to be interpreted by
using many software program vendors, Dynamic Data Exchange Management Library
(DDEML) was created. This library simplified interfacing with DDE protocol as well as
furnished a frequent interface for all developers.
How Does DCOM Work?
In order for DCOM to work, the
COM object needs to be configured
correctly on both computers – in our
experience they rarely were, and you had
to uninstall and reinstall the objects
several times to get them to work.
• The Windows Registry contains the
DCOM configuration data in 3 identifiers:
1) CLSID.
2) PROGID.
3) APPID.
• CLSID :-
The Class Identifier (CLSID) is a Global Unique Identifier (GUID). Windows stores a
CLSID for each installed class in a program. When you need to run a class, you need the
correct CLSID, so Windows knows where to go and find the program.
• PROGID :-
The Programmatic Identifier (PROGID) is an optional identifier a programmer can
substitute for the more complicated and strict CLSID. PROGIDs are usually easier to read
and understand. A basic PROGID for our previous example could be Hitchiker. Last Name
There are no restrictions on how many PROGIDs can have the same name, which causes
issues on occasion.
• APPID :-
The Application Identifier (APPID) identifies all of the classes that are part of the
same executable and the permissions required to access it. DCOM cannot work if the
APPID isn’t correct. You will probably get permissions errors trying to create the remote
object, in my experience.
DCOM Architecture :
• DCOM structure is designed for promoting software interoperability.
• The architecture supports a “software bus” on which reusable software program
components can be used and built-in with one any other seamlessly.
• Object model used to be selected due to fact of its incapability to provide inheritance.
• This means that architecture is successful in keeping off fragile base class syndrome
which exists in different models.
• The fragile base class syndrome seems when one class inherits members and behavior
of any other class.
• Class which offers behavior and member functions is recognized as base class while
other class is recognized as derived class.
• Changes like this end result in having to alter base class which in turn requires
compilation of all dependent classes.
A basic DCOM transaction looks like this:
• The client computer requests the remote computer to create an object by its
CLSID or PROGID. If the client passes the APPID, the remote computer looks up
the CLSID using the PROGID.
• The remote machine checks the APPID and verifies the client has permissions to
create the object.
• DCOMLaunch.exe (if an exe) or DLLHOST.exe (if a dll) will create an instance of
the class the client computer requested.
• The Client can now access all functions in the class on the remote computer.
• If the APPID isn’t configured correctly, or the client doesn’t have the correct
permissions, or the CLSID is pointing to an old version of the exe or any other
number of issues, you will likely get the dreaded “Can’t Create Object” message.
DCOM vs. CORBA
• Common Object Request Broker Architecture (CORBA) is a JAVA based
application and functions basically the same as DCOM. Unlike DCOM, CORBA
isn’t tied to any particular Operating System (OS), and works on UNIX, Linux,
SUN, OS X, and other UNIX-based platforms.
• Neither proved secure or scalable enough to become a standard for high volume
web traffic. DCOM and CORBA didn’t play well with firewalls, so HTTP became
the default standard protocol for the internet.
Distributing computing.pptx

More Related Content

Similar to Distributing computing.pptx

Rpc Case Studies (Distributed computing)
Rpc Case Studies (Distributed computing)Rpc Case Studies (Distributed computing)
Rpc Case Studies (Distributed computing)Sri Prasanna
 
Ch-4 Middleware Architectures.pptx
Ch-4 Middleware Architectures.pptxCh-4 Middleware Architectures.pptx
Ch-4 Middleware Architectures.pptxdagilema
 
05 rpc-case studies
05 rpc-case studies05 rpc-case studies
05 rpc-case studieshushu
 
CORBA - Introduction and Details
CORBA - Introduction and DetailsCORBA - Introduction and Details
CORBA - Introduction and Detailsdgsdg2websd
 
EAI and Attachmate Pt. 2 9-00
EAI and Attachmate Pt. 2  9-00EAI and Attachmate Pt. 2  9-00
EAI and Attachmate Pt. 2 9-00Jeff Krukin
 
Distributed system architecture
Distributed system architectureDistributed system architecture
Distributed system architectureYisal Khan
 
Corba concepts & corba architecture
Corba concepts & corba architectureCorba concepts & corba architecture
Corba concepts & corba architecturenupurmakhija1211
 
corba-151024114450-lva1-app6891.pptx
corba-151024114450-lva1-app6891.pptxcorba-151024114450-lva1-app6891.pptx
corba-151024114450-lva1-app6891.pptxAasimAbdul
 
Distributed objects & components of corba
Distributed objects & components of corbaDistributed objects & components of corba
Distributed objects & components of corbaMayuresh Wadekar
 
Corba introduction and simple example
Corba introduction and simple example Corba introduction and simple example
Corba introduction and simple example Alexia Wang
 
corbaintroductionandexample-140703005744-phpapp02.pdf
corbaintroductionandexample-140703005744-phpapp02.pdfcorbaintroductionandexample-140703005744-phpapp02.pdf
corbaintroductionandexample-140703005744-phpapp02.pdfBesAli1
 
Dbms & prog lang
Dbms & prog langDbms & prog lang
Dbms & prog langTech_MX
 
Java RMI Detailed Tutorial
Java RMI Detailed TutorialJava RMI Detailed Tutorial
Java RMI Detailed TutorialMasud Rahman
 
Introduction To Corba
Introduction To CorbaIntroduction To Corba
Introduction To Corbarajianju
 
.net Based Component Technologies
.net Based Component Technologies.net Based Component Technologies
.net Based Component Technologiesprakashk453625
 

Similar to Distributing computing.pptx (20)

Rpc Case Studies (Distributed computing)
Rpc Case Studies (Distributed computing)Rpc Case Studies (Distributed computing)
Rpc Case Studies (Distributed computing)
 
Ch-4 Middleware Architectures.pptx
Ch-4 Middleware Architectures.pptxCh-4 Middleware Architectures.pptx
Ch-4 Middleware Architectures.pptx
 
Learning activity 3
Learning activity 3Learning activity 3
Learning activity 3
 
05 rpc-case studies
05 rpc-case studies05 rpc-case studies
05 rpc-case studies
 
CORBA - Introduction and Details
CORBA - Introduction and DetailsCORBA - Introduction and Details
CORBA - Introduction and Details
 
Common Object Request Broker Architecture
Common Object Request Broker ArchitectureCommon Object Request Broker Architecture
Common Object Request Broker Architecture
 
Corba model ppt
Corba model pptCorba model ppt
Corba model ppt
 
EAI and Attachmate Pt. 2 9-00
EAI and Attachmate Pt. 2  9-00EAI and Attachmate Pt. 2  9-00
EAI and Attachmate Pt. 2 9-00
 
Distributed system architecture
Distributed system architectureDistributed system architecture
Distributed system architecture
 
Corba concepts & corba architecture
Corba concepts & corba architectureCorba concepts & corba architecture
Corba concepts & corba architecture
 
Chapter 6-Remoting
Chapter 6-RemotingChapter 6-Remoting
Chapter 6-Remoting
 
corba-151024114450-lva1-app6891.pptx
corba-151024114450-lva1-app6891.pptxcorba-151024114450-lva1-app6891.pptx
corba-151024114450-lva1-app6891.pptx
 
Corba
CorbaCorba
Corba
 
Distributed objects & components of corba
Distributed objects & components of corbaDistributed objects & components of corba
Distributed objects & components of corba
 
Corba introduction and simple example
Corba introduction and simple example Corba introduction and simple example
Corba introduction and simple example
 
corbaintroductionandexample-140703005744-phpapp02.pdf
corbaintroductionandexample-140703005744-phpapp02.pdfcorbaintroductionandexample-140703005744-phpapp02.pdf
corbaintroductionandexample-140703005744-phpapp02.pdf
 
Dbms & prog lang
Dbms & prog langDbms & prog lang
Dbms & prog lang
 
Java RMI Detailed Tutorial
Java RMI Detailed TutorialJava RMI Detailed Tutorial
Java RMI Detailed Tutorial
 
Introduction To Corba
Introduction To CorbaIntroduction To Corba
Introduction To Corba
 
.net Based Component Technologies
.net Based Component Technologies.net Based Component Technologies
.net Based Component Technologies
 

More from Kaviya452563

softcomputing.pptx
softcomputing.pptxsoftcomputing.pptx
softcomputing.pptxKaviya452563
 
Big Data Analytics.pptx
Big Data Analytics.pptxBig Data Analytics.pptx
Big Data Analytics.pptxKaviya452563
 
client server computing.pptx
client server computing.pptxclient server computing.pptx
client server computing.pptxKaviya452563
 
Internet of Things.pptx
Internet of Things.pptxInternet of Things.pptx
Internet of Things.pptxKaviya452563
 
python programming.pptx
python programming.pptxpython programming.pptx
python programming.pptxKaviya452563
 
Artificial Intelligence.pptx
Artificial Intelligence.pptxArtificial Intelligence.pptx
Artificial Intelligence.pptxKaviya452563
 
Advanced java programming
Advanced java programmingAdvanced java programming
Advanced java programmingKaviya452563
 
Network and internet security
Network and internet securityNetwork and internet security
Network and internet securityKaviya452563
 
Advanced computer architecture
Advanced computer architectureAdvanced computer architecture
Advanced computer architectureKaviya452563
 
Data structures and algorithms
Data structures and algorithmsData structures and algorithms
Data structures and algorithmsKaviya452563
 

More from Kaviya452563 (14)

softcomputing.pptx
softcomputing.pptxsoftcomputing.pptx
softcomputing.pptx
 
OOAD.pptx
OOAD.pptxOOAD.pptx
OOAD.pptx
 
DIP.pptx
DIP.pptxDIP.pptx
DIP.pptx
 
Big Data Analytics.pptx
Big Data Analytics.pptxBig Data Analytics.pptx
Big Data Analytics.pptx
 
client server computing.pptx
client server computing.pptxclient server computing.pptx
client server computing.pptx
 
WE.pptx
WE.pptxWE.pptx
WE.pptx
 
Internet of Things.pptx
Internet of Things.pptxInternet of Things.pptx
Internet of Things.pptx
 
data mining.pptx
data mining.pptxdata mining.pptx
data mining.pptx
 
python programming.pptx
python programming.pptxpython programming.pptx
python programming.pptx
 
Artificial Intelligence.pptx
Artificial Intelligence.pptxArtificial Intelligence.pptx
Artificial Intelligence.pptx
 
Advanced java programming
Advanced java programmingAdvanced java programming
Advanced java programming
 
Network and internet security
Network and internet securityNetwork and internet security
Network and internet security
 
Advanced computer architecture
Advanced computer architectureAdvanced computer architecture
Advanced computer architecture
 
Data structures and algorithms
Data structures and algorithmsData structures and algorithms
Data structures and algorithms
 

Recently uploaded

Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Celine George
 
Capitol Tech U Doctoral Presentation - April 2024.pptx
Capitol Tech U Doctoral Presentation - April 2024.pptxCapitol Tech U Doctoral Presentation - April 2024.pptx
Capitol Tech U Doctoral Presentation - April 2024.pptxCapitolTechU
 
Earth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatEarth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatYousafMalik24
 
MARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized GroupMARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized GroupJonathanParaisoCruz
 
Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17Celine George
 
Proudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptxProudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptxthorishapillay1
 
Historical philosophical, theoretical, and legal foundations of special and i...
Historical philosophical, theoretical, and legal foundations of special and i...Historical philosophical, theoretical, and legal foundations of special and i...
Historical philosophical, theoretical, and legal foundations of special and i...jaredbarbolino94
 
Solving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxSolving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxOH TEIK BIN
 
DATA STRUCTURE AND ALGORITHM for beginners
DATA STRUCTURE AND ALGORITHM for beginnersDATA STRUCTURE AND ALGORITHM for beginners
DATA STRUCTURE AND ALGORITHM for beginnersSabitha Banu
 
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdfssuser54595a
 
internship ppt on smartinternz platform as salesforce developer
internship ppt on smartinternz platform as salesforce developerinternship ppt on smartinternz platform as salesforce developer
internship ppt on smartinternz platform as salesforce developerunnathinaik
 
Alper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentAlper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentInMediaRes1
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxSayali Powar
 
Types of Journalistic Writing Grade 8.pptx
Types of Journalistic Writing Grade 8.pptxTypes of Journalistic Writing Grade 8.pptx
Types of Journalistic Writing Grade 8.pptxEyham Joco
 
Final demo Grade 9 for demo Plan dessert.pptx
Final demo Grade 9 for demo Plan dessert.pptxFinal demo Grade 9 for demo Plan dessert.pptx
Final demo Grade 9 for demo Plan dessert.pptxAvyJaneVismanos
 
Presiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha electionsPresiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha electionsanshu789521
 
CARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxCARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxGaneshChakor2
 
Full Stack Web Development Course for Beginners
Full Stack Web Development Course  for BeginnersFull Stack Web Development Course  for Beginners
Full Stack Web Development Course for BeginnersSabitha Banu
 
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...Marc Dusseiller Dusjagr
 

Recently uploaded (20)

Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
Incoming and Outgoing Shipments in 1 STEP Using Odoo 17
 
Capitol Tech U Doctoral Presentation - April 2024.pptx
Capitol Tech U Doctoral Presentation - April 2024.pptxCapitol Tech U Doctoral Presentation - April 2024.pptx
Capitol Tech U Doctoral Presentation - April 2024.pptx
 
Earth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatEarth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice great
 
MARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized GroupMARGINALIZATION (Different learners in Marginalized Group
MARGINALIZATION (Different learners in Marginalized Group
 
Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17
 
Proudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptxProudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptx
 
Historical philosophical, theoretical, and legal foundations of special and i...
Historical philosophical, theoretical, and legal foundations of special and i...Historical philosophical, theoretical, and legal foundations of special and i...
Historical philosophical, theoretical, and legal foundations of special and i...
 
Solving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxSolving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptx
 
DATA STRUCTURE AND ALGORITHM for beginners
DATA STRUCTURE AND ALGORITHM for beginnersDATA STRUCTURE AND ALGORITHM for beginners
DATA STRUCTURE AND ALGORITHM for beginners
 
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
 
internship ppt on smartinternz platform as salesforce developer
internship ppt on smartinternz platform as salesforce developerinternship ppt on smartinternz platform as salesforce developer
internship ppt on smartinternz platform as salesforce developer
 
Alper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentAlper Gobel In Media Res Media Component
Alper Gobel In Media Res Media Component
 
OS-operating systems- ch04 (Threads) ...
OS-operating systems- ch04 (Threads) ...OS-operating systems- ch04 (Threads) ...
OS-operating systems- ch04 (Threads) ...
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
 
Types of Journalistic Writing Grade 8.pptx
Types of Journalistic Writing Grade 8.pptxTypes of Journalistic Writing Grade 8.pptx
Types of Journalistic Writing Grade 8.pptx
 
Final demo Grade 9 for demo Plan dessert.pptx
Final demo Grade 9 for demo Plan dessert.pptxFinal demo Grade 9 for demo Plan dessert.pptx
Final demo Grade 9 for demo Plan dessert.pptx
 
Presiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha electionsPresiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha elections
 
CARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxCARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptx
 
Full Stack Web Development Course for Beginners
Full Stack Web Development Course  for BeginnersFull Stack Web Development Course  for Beginners
Full Stack Web Development Course for Beginners
 
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
 

Distributing computing.pptx

  • 1. NADAR SARASWATHI COLLEGE OF ARTS & SCIENCE,THENI. DEPARTMENT OF CS & IT DISTRIBUTED COMPUTING PRESENTED BY G.KAVIYA M.SC(IT) TOPIC:CORBA, DCOM
  • 2. SYNOPSIS: CORBA: • Introduction. • CORBA includes four components. • Pre-CORBA Approach to Client/Server Development. • CORBA Approach to Client/Server Development. • Interface definition language(IDL) DCOM: • What is DCOM (Distributed Component Object Model)? • Dynamic Data Exchange • How Does DCOM Work? • DCOM Architecture • DCOM vs. CORBA
  • 3. CORBA: • Introduction • CORBA includes four components. • Pre-CORBA Approach to Client/Server Development • CORBA Approach to Client/Server Development. • Interface definition language(IDL).
  • 4. CORBA INTRODUCTION:  The Common Object Request Broker architecture (CORBA) is a standard developed by the Object Management Group (OMG) to provide interconnectivity among distributed objects.  CORBA is the world’s leading middleware solution enabling the exchange of information, independent of hardware platforms, programming languages, and operating systems.  CORBA is essentially a design specification for an Object Request Broker (ORB), where an ORB provides the mechanisms required for distributed objects to communicate with one another, whether locally or on remote devices, written in different languages, or at different locations on a network.
  • 5. CONTINUE;  The CORBA Interface Definition Language, or IDL, allows the development of language and locations-independent interfaces to distributed objects.  Using CORBA, application components can communicate with one another no matter where they are located, or who has designed them.  CORBA provides the location transparency to be able to execute these applications.  CORBA is frequently described as a “software bus” because it is a software- based communications interface through which objects are located and accessed. The for example below identifies the primary components seen within a CORBA implementation.
  • 6. CONTINUE; • Data communication from client to server is accomplished through a well- defined object-oriented interface. • The Object Request Broker (ORB) determines the location of the target object, send a request to that object, and returns any response back to the caller. • Through this object-oriented technology, developers can take advantage of features such as inheritance, encapsulation, polymorphism, and runtime dynamic binding.
  • 7. CONTINUE; • These features allow applications to be changed, modified and re-used with minimal changes to the parent interface. • For Example below identifies how a client sends a request to a server through the ORB;
  • 8. CORBA includes four components:- Object Request Broker(ORB) CORBA server Naming service CORBARequest node Object Request Broker(ORB):- The Object Request Broker (ORB) handles the communication, marshaling, and unmarshaling of parameters so that the parameter handling is transparent for a CORBA server and client applications.
  • 9. CONTINUE; CORBA server:- The CORBA server creates CORBA objects and initializes them with an ORB. The server places references to the CORBA objects inside a naming service so that clients can access them. Naming service:- The naming service holds references to CORBA objects. CORBARequest node:- The CORBARequest node acts as a CORBA client.
  • 10. Pre-CORBA Approach to Client/Server Development:- In Client/server computing, an application consists of two parts: The client application and the server application. These two applications a typically run on different machines, connected by a network. The client application makes requests for information or services and typically provides users with a means to display results. The key advantages of client/server model are:  Computing functions run on the most appropriate machine system.  Developers can balance the load of application processing among several servers.  Server applications can be shared numerous client applications.
  • 11. CORBA Approach to Client/Server Development:- The CORBA model provides a more flexible approach to developing distributed application. The CORBA model: • Formally separates the client and sever portions of the application. The client application asks for the server application to accomplish the task. • Logically separates an application into objects that can perform certain tasks, called operations.
  • 12. INTERFACE DEFINITION LANGUAGE(IDL)  A foundation of the COBRA standards is the Interface Definition Language .  IDL is the OMG standard for defining language – neutral APIs and provides the platform-independent delineation of the interfaces of distributed objects.  The ability of the COBRA environments to provide consistency between clients and serves in heterogeneous environments begins with a standardized definition of the data and operations constituting the client/sever interface .  IDL defines the modules ,interfaces and operations for the applications and is not considered a programming language. The various programming languages , such as Ada ,C++, C# , Java ,supply the implementation of the interface via standardized IDL mappings.
  • 13. The basic steps for CORBA development can be seen in the following Example: An overview of how the IDL is translated to the corresponding language (in this example C++), mapped to the source code , complied, and then linked with the ORB library, resulting in the client and server implementation.
  • 14. DCOM • What is DCOM (Distributed Component Object Model)? • Dynamic Data Exchange • How Does DCOM Work? • DCOM Architecture : • DCOM vs. CORBA
  • 15. WHAT IS DCOM (DISTRIBUTED COMPONENT OBJECT MODEL)? • DCOM is a programming construct that allows a computer to run programs over the network on a different computer as if the program was running locally. DCOM is an acronym that stands for Distributed Component Object Model. DCOM is a proprietary Microsoft software component that allows COM objects to communicate with each other over the network. • An extension of COM, DCOM solves a few inherent problems with the COM model to better use over a network: Marshalling. Distributed garbage collection. Using DCE/RPC as the underlying RPC mechanism
  • 17. CONTINUE; • Marshalling: Marshalling solves a need to pass data from one COM object instance to another on a different computer – in programming terms, this is called “passing arguments.” For example, if I wanted Zaphod’s last name, I would call the COM Object Last-name with the argument of Zaphod. The Last-name function would use a Remote Procedure Call (RPC) to ask the other COM object on the target server for the return value for Last-name(Zaphod), and then it would send the answer – Beeblebrox – back to the first COM object.
  • 18. CONTINUE; • Distributed Garbage Collection: Designed to scale DCOM in order to support high volume internet traffic, Distributed Garbage Collection also addresses a way to destroy and reclaim completed or abandoned DCOM objects to avoid blowing up the memory on webservers. In turn, it communicates with the other servers in the transaction chain to let them know they can get rid of the objects related to a transaction. • Using DCE/RPC as the underlying RPC mechanism: To achieve the previous items and to attempt to scale to support high volume web traffic, Microsoft implemented DCE/RPC as the underlying technology for DCOM – which is where the D in DCOM came from.
  • 19. (DCOM) both object and component paradigm consists of a number of issues. 1.Interoperability 2. Versioning 3. Language independence 4. Size and complexity of system Dynamic Data Exchange : Dynamic Data Exchange or DDE, used to be designed for Microsoft Windows to enable applications to exchange information of any specific type. As DDE protocol is actually a little complicated and this complexity used to be interpreted by using many software program vendors, Dynamic Data Exchange Management Library (DDEML) was created. This library simplified interfacing with DDE protocol as well as furnished a frequent interface for all developers.
  • 20. How Does DCOM Work? In order for DCOM to work, the COM object needs to be configured correctly on both computers – in our experience they rarely were, and you had to uninstall and reinstall the objects several times to get them to work. • The Windows Registry contains the DCOM configuration data in 3 identifiers: 1) CLSID. 2) PROGID. 3) APPID.
  • 21. • CLSID :- The Class Identifier (CLSID) is a Global Unique Identifier (GUID). Windows stores a CLSID for each installed class in a program. When you need to run a class, you need the correct CLSID, so Windows knows where to go and find the program. • PROGID :- The Programmatic Identifier (PROGID) is an optional identifier a programmer can substitute for the more complicated and strict CLSID. PROGIDs are usually easier to read and understand. A basic PROGID for our previous example could be Hitchiker. Last Name There are no restrictions on how many PROGIDs can have the same name, which causes issues on occasion. • APPID :- The Application Identifier (APPID) identifies all of the classes that are part of the same executable and the permissions required to access it. DCOM cannot work if the APPID isn’t correct. You will probably get permissions errors trying to create the remote object, in my experience.
  • 22. DCOM Architecture : • DCOM structure is designed for promoting software interoperability. • The architecture supports a “software bus” on which reusable software program components can be used and built-in with one any other seamlessly. • Object model used to be selected due to fact of its incapability to provide inheritance. • This means that architecture is successful in keeping off fragile base class syndrome which exists in different models. • The fragile base class syndrome seems when one class inherits members and behavior of any other class. • Class which offers behavior and member functions is recognized as base class while other class is recognized as derived class. • Changes like this end result in having to alter base class which in turn requires compilation of all dependent classes.
  • 23. A basic DCOM transaction looks like this: • The client computer requests the remote computer to create an object by its CLSID or PROGID. If the client passes the APPID, the remote computer looks up the CLSID using the PROGID. • The remote machine checks the APPID and verifies the client has permissions to create the object. • DCOMLaunch.exe (if an exe) or DLLHOST.exe (if a dll) will create an instance of the class the client computer requested. • The Client can now access all functions in the class on the remote computer. • If the APPID isn’t configured correctly, or the client doesn’t have the correct permissions, or the CLSID is pointing to an old version of the exe or any other number of issues, you will likely get the dreaded “Can’t Create Object” message.
  • 24. DCOM vs. CORBA • Common Object Request Broker Architecture (CORBA) is a JAVA based application and functions basically the same as DCOM. Unlike DCOM, CORBA isn’t tied to any particular Operating System (OS), and works on UNIX, Linux, SUN, OS X, and other UNIX-based platforms. • Neither proved secure or scalable enough to become a standard for high volume web traffic. DCOM and CORBA didn’t play well with firewalls, so HTTP became the default standard protocol for the internet.