Limitations of Object-Based Middleware. Components in CORBA. The CORBA Component Model. CORBA Component
|
|
- Julia Hortense Nichols
- 5 years ago
- Views:
Transcription
1 Limitations of Object-Based Middleware Object-Oriented programming is a standardised technique, but Lack of defined interfaces between objects It is hard to specify dependencies between objects Internal configuration of objects Long time to install new applications s s are functional entities they must define what they offer and what they need Application construction: composition of objects with defined interfaces Semi-automatic deployment of the application: Run-time environment configuration s in CORBA CORBA Model (CCM) Distributed, component-oriented model s are binary code fragments for functional entities, maybe implemented in different languages Application deployment by definition of functional entities and interactions between entities Standardised environment for management: creation, activation, deactivation, CORBAservices for components (Security, Persistence, Event, Transactions) Interoperability with Enterprise Java Beans (EJB) CORBA Model is a specification for creating server-side scalable, language-neutral, transactional, multi-user and secure enterprise-level applications The CORBA Model CORBA State/Country Chicago San Jose Point-of-Sale Data IT Department Processing Center Centers Market Analysis Central Team Data Store Client Middleware Bus Repository Compose Deploy Online Ordering Assembly Server System Development Deployment & Configuration Metadata Order Deployment Processing ASP & Configuration Mechanism Containers Containers Middleware Framework Application Server Extends the CORBA Object Model Provides standard run-time environment for components application servers containers : reusable physical entity Container: standardised execution environment for components Application server: generic server process Adoption of POA Uses CORBAservices: Transactions, Security, Event, is a new CORBA meta-type. Extension of type Object (with constraints) Has an interface, and an object reference Also, a stylized use of CORBA interfaces/objects Provides component features (also named Ports) Could support multiple interfaces Each component instance is created and managed by a unique component home A component describes: What functionality a component offers to other components What functionality a component needs from other components What kind of interaction are used between components: synchronous or asynchronous Which component properties can be configured Which manager is responsible for managing component instances 73 74
2 A CORBA offered operation interfaces interface required operation interfaces Building CCM Applications is Assembling Instances OFFERED Facets Event sinks Receptacles Event sources REQUIRED consume events Attributes produced events configurable properties Facets Receptacles Multiple named interfaces that provide the component s application functionality to clients - one of these must be the same as the supported interface Each facet embodies a view of the component, corresponds to a role in which a client may act relatively to the component A facet represents the component itself, not a separate thing contained by the component Facets have independent object references Connection points between components, where one uses an interface of another inherent life cycle dependencies or ownership relationship implied - no operations are inherently transitive across receptacle connection Plug in to the receptacle one or more references to instances of the required component type Explicit client relationship Ability to specialize by delegation, compose functions IDL compiler generates operations to connect to and disconnect from the receptacle 77 78
3 Events Attributes Decoupled communication between components Receptacle supports direct communication between components In contrast, events are indirect: Event channel contacts set of consumers for each event Simple event model based on channels Subset of CORBA tification Service ( push model) s can declare that they Produce a kind of event (event source) Emit (1:1) Publish (1:N) Accept a kind of event (event sinks) Named configurable properties Allow component configuration on an instance basis Determine behavior (within range of possible behaviors) for particular component instance Configurator objects can configure components by establishing attribute values Attributes exposed through accessors and mutators Signal when completed and then validity checked Can be configured By visual property sheet mechanisms in assembly or deployment environments By homes or during implementation initialization Potentially readonly thereafter Homes A CORBA Home A home manages a specified component type Home definition is distinct from component definition More than one home type can manage the same component type (but any given component instance has only one home) Allows life cycle characteristics or key type to vary/evolve without changing component definition Instantiated at deployment time Home interface c 1 MyHome c N 81 82
4 HomeFinder Dining s Example A HomeFinder is used to find out the reference for the home interface belonging to a component type All homes can be registered here (is not done automatically) A brokerage of homes to clients Home implementations register with home finder Clients request homes from home finder Home finder makes determination of what is the best home to service a client, based on the client s request and any available environmental or configuration data resolve_initial_reference( HomeFinder ) gives back reference to HomeFinder Thinking Hungry Starving Eating Dead Kant Aristotle Descartes Thinking Hungry Starving Eating Dead Thinking Hungry Starving Eating Dead IDL Example component attribute string name; // The left fork receptacle. uses left; // The right fork receptacle. uses right; // The status info event source. publishes StatusInfo info; Home left right info Dining s as CORBA s name = Kant name = Descartes Base ref. Facet Receptacle Event Sink Event Source home Home manages factory new(in string name); name name = Aristotle Observer 85 86
5 State Types enum State EATING, THINKING, HUNGRY, STARVING, DEAD eventtype StatusInfo public string name; public State state; public unsigned long ticks_since_last_meal; public boolean has_left_fork; public boolean has_right_fork; name component attribute string name; // The left fork receptacle. uses left; // The right fork receptacle. uses right; // The status info event source. publishes StatusInfo info; home Home manages factory new(in string name); Home name Observer exception InUse interface void get() raises (InUse); void release(); // The fork component. component Manager // The fork facet used by philosophers. provides the_fork; // Home for instantiating Manager components. home Home manages Manager Home Manager component Observer // The status info sink port. consumes StatusInfo info; // Home for instantiating observers. home ObserverHome manages Observer Observer Home Observer 89 90
6 Client Programming Model -aware and -unaware clients Clients see two design patterns Factory Client finds a home and uses it to create a new component instance Finder - Client searches an existing component instance through Name Service, Trader Service, or home finder operations Invokes operations on component instances CCM by this offers a powerfull architecture to construct really distributed applications. But: there are lots of other, different middleware concepts, too. 91 Distributed Object Model (DCOM) Basic Technique in Microsoft's Windows: COM ( Object Model) Supports the development of components that can be dynamically activated and interact with each other Can be used in executables as well as in dynamic link libraries Was developed to support compound documents ActiveX: covers the tasks of OLE, together with new features like starting variants, scripting support, OLE: Object Linking and Embedding. Serves for gluing together different parts of compound documents COM: communication infrastructure between different objects located on the same computer DCOM: 'distributed version' of COM to support activation/interaction with components located on another machine. For a programmer, the distinction between COM and DCOM is hidden behind interfaces (access transparency) 92 Object Model Object Model Like CORBA, DCOM bases on the remote object model: objects can be placed in the same process as the client, in another process on the same machine, or in a process on a remote machine Basic concept: Distinction between interface and implementation The developer first specifies an object by its interface in an Interface Definition Language (Microsoft IDL = MIDL) An object simply is an implementation of an interface Interface means binary interface: a table of pointers to methods belonging to an interface. In this way, interfaces are language-independent Each interface is assigned with a globally unique Interface Identifier (IID) DCOM object: Instance of a class object, which represents an interface By calling a function CreateInstance on a class object (identified by a class ID, CLSID), a new object with this interface is build. All objects implement a standard interface: IUnknown A pointer to IUnknown is passed back when creating an object Important method in this interface: QueryInterface, which returns a pointer to another interface implemented by the object By this, a standard method to get access to each object's methods is given create Reference: IUnknown IUnknown QueryInterface(deposit) withdraw getbal. deposit setbal. Reference: deposit 93 94
7 Object Model Comparison to CORBA CORBA generates language-dependent stubs DCOM generates binary interfaces All objects in DCOM are transient Reference counting is part of IUnknown to see how many other objects are knowing about an object Having no more references, an object is destroyed An object can implement the IDispatch interface Dynamic invocation of objects An object does not have to know in advance all interfaces it will have to contact in its lifetime When an object implements this interface, calls to it can be constructed at runtime DCOM One specification of an interface Re-use of the specification A new specification for each mapping to a programming language Separate translation of the interface for each language CORBA Object Identifiaction and Activation Type library: storage for interface definitions [CORBA: Interface Repository] Associated with an application Used to figure out the signature of a method to be invoked dynamically Used as a type library for supporting program developers Registry (Windows registry) [CORBA: Implementation Repository] Used to provide a mapping from class identifiers to executable code. In case of a remote invocation, the Service Control Manager (SCM) on the target host is contacted by a client to access the remote registry 97 Communication in DCOM Client side: Client proxy: providing the object's interface and sending the request to the object Proxy marshaller: translating a request into a transport format before sending Server side: Object stub: receives a call from a client proxy and passes it on to the object Proxy marshaller: extracts a request from a receives message Communication at the beginning only was synchronous using RPC Alternatives: Callback interfaces The client provides an interface where the server can call back after working on a request Asynchronous communication For each method, two methods are implemented: A start method the client passes its request to A finish method the client calls to read the response of the server 98
8 Events Real asynchronous communication without the need for both, client and object, to be active: using events An event is modelled as a method call An event class groups events and can be instantiated to event objects which can send events of specific types To register an implementation for a method so that events can be sent to it, a pointer to the corresponding interface has to be sent to the event system The event system can store events to pass them on to the receiver later Passing Interface Pointers A client does not see distribution; the invocation of remote objects with DCOM is the same as an invocation of a local object with COM Difference: in COM an object is referenced by an interface pointer, in DCOM a remote object is referenced by implementing an interface as a proxy Passing on an object reference to another client is made by sending it the proxy which contains all connection information Supplier: someone who creates events Consumer: someone who receives events m_event: method of an object Naming in DCOM Only low-level naming Objects are only transient. To expand an object's lifetime, additionally a persistent object reference is stored to an object. This reference is called moniker. Monikers have all information available to reconstruct an object and reload its state Step Performer Client Moniker SCM Class object Moniker Description Calls BindMoniker at moniker Looks up associated CLSID and instructs SCM to create object Loads class object Creates object and returns interface pointer to moniker Instructs object to load previously stored state Types of Monikers Moniker type File moniker URL moniker Class moniker Composite moniker Item moniker Pointer moniker Description Reference to an object constructed from a file Reference to an object constructed from a URL Reference to a class object Reference to a composition of monikers Reference to a moniker in a composition Reference to an object in a remote process 6 7 Object Moniker Loads its state from file Returns interface pointer of object to client
9 Active Directory Windows 2000 contains a directory service called Active Directory which can be used by DCOM A distributed system based on Windows 2000 is partitioned into domains consisting of a number of resources and users Each domain has a domain controller which is a local directory server A domain controller is implemented as a LDAP directory server LDAP servers are registered in DNS Problem: a client has to know the target domain for its request GLOBE GLobal Object-Based Environment Experimental distributed system developed by Vrije Universiteit Amsterdam Design goal: support huge number of objects and users spread across the Internet, scalability is central role Fundamental concept: how are objects viewed? Objects don't only encapsulate state and operations, but additionally they encapsulate the implementation of policies that prescribe the distribution of an object's state across multiple machines Each object determines how its state is migrated, replicated or distributed over its replicas Globe Object Model t uses the remote object model Objects, i.e. their states can be physically distributed (and replicated). They are called distributed shared objects Each process running a 'part' of an object has a local implementation of the object's interface implementation (local representative, local object) Each local object offers an interface SOInf (similar to IUnknown in DCOM) Local objects implement binary interfaces, interfaces are described using an IDL 105 Composed Objects Two kinds of local objects Primitive local object Composite local object: composed of several primitive or composed local objects Composition is used to construct a usable local object Semantics subobject implements the functionality Communication subobject provides a standard interface to the underlying network; it offers message-passing primitives for communication Replication subobject implements the object's distribution strategy Control subobject is intermediate between user interface and all object functions 106
10 Process-to-Object Binding concepts like type library and registry for getting interface descriptions and activating objects. Used in Globe: Communication Only synchronous communication Some local objects (here in process A) can be seen as proxies only forwarding requests If an object's state is replicated, the replication subobject forwards the request to all replicas and merges the results Globe Client and Server Client: Server Additionally: Method Bind AddBinding CreateLR RemoveLR UnbindDSO ListAll ListDSO StatLR Process bound to a distributed shared object, invoking this object by making calls at the control subobject (process A on the last slide) Process that can handle only invocations coming in through the network (processes B and C on the last slide) object servers for supporting distributed shared objects/hosting local objects. Interface for such object servers: Description Lets the server bind to a given object, unless it is already bound Lets the server bind to an object, even if it is already bound Lets the server create a local object for a new distributed object Lets the server remove a local object of a given object Lets the server remove all local objects of a given object Returns a list of all local objects Returns a list of all local objects for a given objects Get the status of a specific local object Naming Globe distinguishes between naming and locating objects Each distributed shared object is assigned a globally unique object identifier (OID) An object handle contains the OID Location service is organised hierarchically The address given back by the location service can be a Stacked address: Field Protocol identifier Protocol address Implementation handle Instance address: Field Implementation handle Initialization string Description A constant representing a (known) protocol A protocol-specific address Reference to a file in a class repository (URL) Description Reference to a file in a class repository String that is used to initialize an implementation
11 Globe Naming Service Simple naming service with human-friendly names: Based on DNS Names are represented by a Uniform Resource Identifier (URI) Comparison of CORBA, DCOM and Globe Issue Design goals Object model Services Interfaces Synchronous communication Asynchronous communication Callbacks Events Messaging Object server Directory service Trading service CORBA Interoperability Remote objects Many of its own Language-dependent Flexible (POA) DCOM Functionality Remote objects From environment Binary Hard-coded Globe Scalability Distributed objects Few Binary Object dependent Comparison of CORBA, DCOM and Globe Issue Naming service Location service Object reference Synchronisation Replication support Transactions Fault tolerance Recovery support Security CORBA Object's location Transactions Separate server By replication Various mechanisms DCOM Interface pointer Transactions ne By transactions By transactions Various mechanisms Globe True identifier Only intra-object Separate subobject By replication More work needed 113
Distributed Object-Based. Systems. Chapter 9
Distributed Object-Based Systems Chapter 9 Overview of CORBA The global architecture of CORBA. Object Model The general organization of a CORBA system. Service Collection Query Concurrency Transaction
More informationDistributed Systems Principles and Paradigms
Distributed Systems Principles and Paradigms Chapter 09 (version 27th November 2001) Maarten van Steen Vrije Universiteit Amsterdam, Faculty of Science Dept. Mathematics and Computer Science Room R4.20.
More informationDistributed Middleware. Distributed Objects
Distributed Middleware Distributed objects DCOM CORBA EJBs Jini Lecture 25, page 1 Distributed Objects Figure 10-1. Common organization of a remote object with client-side proxy. Lecture 25, page 2 Distributed
More informationDistributed Object-Based Systems The WWW Architecture Web Services Handout 11 Part(a) EECS 591 Farnam Jahanian University of Michigan.
Distributed Object-Based Systems The WWW Architecture Web Services Handout 11 Part(a) EECS 591 Farnam Jahanian University of Michigan Reading List Remote Object Invocation -- Tanenbaum Chapter 2.3 CORBA
More informationElectronic Payment Systems (1) E-cash
Electronic Payment Systems (1) Payment systems based on direct payment between customer and merchant. a) Paying in cash. b) Using a check. c) Using a credit card. Lecture 24, page 1 E-cash The principle
More informationToday: Distributed Objects. Distributed Objects
Today: Distributed Objects Case study: EJBs (Enterprise Java Beans) Case study: CORBA Lecture 23, page 1 Distributed Objects Figure 10-1. Common organization of a remote object with client-side proxy.
More informationToday: More Case Studies DCOM
Today: More Case Studies DCOM Jini Lecture 24, page 1 DCOM Distributed Component Object Model Microsoft s object model (middleware) Lecture 24, page 2 DCOM: History Successor to COM Developed to support
More informationCHAPTER 7 COM and.net
1 CHAPTER 7 COM and.net Evolution of DCOM Introduction to COM COM clients and servers COM IDL & COM Interfaces COM Threading Models. Marshalling, Custom and standard marshalling. Comparison COM and CORBA.
More informationOutline. COM overview. DCOM overview. Comparison DCOM and Corba
DCOM Overview 1 Outline COM overview DCOM overview Comparison DCOM and Corba 2 COM overview Standard for component interoperability binary standard specifies how the component should be represented in
More informationChapter 10 DISTRIBUTED OBJECT-BASED SYSTEMS
DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN Chapter 10 DISTRIBUTED OBJECT-BASED SYSTEMS Distributed Objects Figure 10-1. Common organization of a remote
More informationComponent models. Page 1
Component Models and Technology Component-based Software Engineering Ivica Crnkovic ivica.crnkovic@mdh.se Page 1 Overview Introduction ACME Architectural Description Language Java Bean Component Model
More informationDISTRIBUTED SYSTEMS [COMP9243] Distributed Object based: Lecture 7: Middleware. Slide 1. Slide 3. Message-oriented: MIDDLEWARE
DISTRIBUTED SYSTEMS [COMP9243] Distributed Object based: KINDS OF MIDDLEWARE Lecture 7: Middleware Objects invoke each other s methods Slide 1 ➀ Introduction ➁ Publish/Subscribe Middleware ➂ Map-Reduce
More informationDistributed Technologies - overview & GIPSY Communication Procedure
DEPARTMENT OF COMPUTER SCIENCE CONCORDIA UNIVERSITY Distributed Technologies - overview & GIPSY Communication Procedure by Emil Vassev June 09, 2003 Index 1. Distributed Applications 2. Distributed Component
More informationToday: Distributed Middleware. Middleware
Today: Distributed Middleware Middleware concepts Case study: CORBA Lecture 24, page 1 Middleware Software layer between application and the OS Provides useful services to the application Abstracts out
More information(D)COM Microsoft s response to CORBA. Alessandro RISSO - PS/CO
(D)COM Microsoft s response to CORBA Alessandro RISSO - PS/CO Talk Outline DCOM What is DCOM? COM Components COM Library Transport Protocols, Security & Platforms Availability Services Based on DCOM DCOM
More informationAdvanced Topics in Operating Systems
Advanced Topics in Operating Systems MSc in Computer Science UNYT-UoG Dr. Marenglen Biba 8-9-10 January 2010 Lesson 10 01: Introduction 02: Architectures 03: Processes 04: Communication 05: Naming 06:
More informationDistributed Objects and Remote Invocation. Programming Models for Distributed Applications
Distributed Objects and Remote Invocation Programming Models for Distributed Applications Extending Conventional Techniques The remote procedure call model is an extension of the conventional procedure
More informationKINGS COLLEGE OF ENGINEERING DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING ACADEMIC YEAR (ODD SEMESTER) QUESTION BANK
KINGS COLLEGE OF ENGINEERING DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING ACADEMIC YEAR 2011 2012(ODD SEMESTER) QUESTION BANK SUBJECT CODE / NAME: IT1402-MIDDLEWARE TECHNOLOGIES YEAR/SEM : IV / VII UNIT
More informationCommunication. Distributed Systems Santa Clara University 2016
Communication Distributed Systems Santa Clara University 2016 Protocol Stack Each layer has its own protocol Can make changes at one layer without changing layers above or below Use well defined interfaces
More informationDCOM CORBA EJB DCOM CORBA CORBA EJB DCOM EJB
DCOM, CORBA, and EJB 1. DCOM, CORBA, and EJB Generic distributed object systems with object RPC, unique object references, generated stubs, and persistent objects. 2. DCOM and CORBA Designed to work across
More informationJAYARAM. COLLEGE OF ENGINEERING AND TECHNOLOGY Pagalavadi, Tiruchirappalli (An approved by AICTE and Affiliated to Anna University)
Estd: 1994 Department of Computer Science and Engineering Subject code : IT1402 Year/Sem: IV/VII Subject Name JAYARAM COLLEGE OF ENGINEERING AND TECHNOLOGY Pagalavadi, Tiruchirappalli - 621014 (An approved
More informationCOMPONENT BASED TECHNOLOGY (IT-1401)
COMPONENT BASED TECHNOLOGY (IT-1401) TWO MARK QUESTIONS: UNIT-I 1. Define software component. A software component is a system element offering a predefined serviceable to communicate with other components.
More informationChallenges in component based programming. Lena Buffoni
Challenges in component based programming Lena Buffoni Challenge: Size & complexity Software is everywhere and increasingly complex (embedded systems, internet of things ) Single products have become product
More informationDistributed Objects. Object-Oriented Application Development
Distributed s -Oriented Application Development Procedural (non-object oriented) development Data: variables Behavior: procedures, subroutines, functions Languages: C, COBOL, Pascal Structured Programming
More informationIntroduction to Web Services & SOA
References: Web Services, A Technical Introduction, Deitel & Deitel Building Scalable and High Performance Java Web Applications, Barish Web Service Definition The term "Web Services" can be confusing.
More informationSoftware Architecture Patterns
Software Architecture Patterns *based on a tutorial of Michael Stal Harald Gall University of Zurich http://seal.ifi.uzh.ch/ase www.infosys.tuwien.ac.at Overview Goal Basic architectural understanding
More informationCHARLES UNIVERSITY, PRAGUE FACULTY OF MATHEMATICS AND PHYSICS. Master Thesis. Michael Cífka Visual Development of Software Components
CHARLES UNIVERSITY, PRAGUE FACULTY OF MATHEMATICS AND PHYSICS Master Thesis Michael Cífka Visual Development of Software Components Supervisor: Ing. Petr Tůma, Dr. I would like to thank my supervisor,
More information1.264 Lecture 16. Legacy Middleware
1.264 Lecture 16 Legacy Middleware What is legacy middleware? Client (user interface, local application) Client (user interface, local application) How do we connect clients and servers? Middleware Network
More informationLecture 5: Object Interaction: RMI and RPC
06-06798 Distributed Systems Lecture 5: Object Interaction: RMI and RPC Distributed Systems 1 Recap Message passing: send, receive synchronous versus asynchronous No global Time types of failure socket
More informationIntroduction to Web Services & SOA
References: Web Services, A Technical Introduction, Deitel & Deitel Building Scalable and High Performance Java Web Applications, Barish Service-Oriented Programming (SOP) SOP A programming paradigm that
More informationChapter 5: Distributed objects and remote invocation
Chapter 5: Distributed objects and remote invocation From Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edition 4, Addison-Wesley 2005 Figure 5.1 Middleware layers Applications
More informationDISTRIBUTED SYSTEMS. Second Edition. Andrew S. Tanenbaum Maarten Van Steen. Vrije Universiteit Amsterdam, 7'he Netherlands PEARSON.
DISTRIBUTED SYSTEMS 121r itac itple TAYAdiets Second Edition Andrew S. Tanenbaum Maarten Van Steen Vrije Universiteit Amsterdam, 7'he Netherlands PEARSON Prentice Hall Upper Saddle River, NJ 07458 CONTENTS
More informationThese are the contents: First, I outline the basics of CORBA, showing its strong and weak points, and what has to be improved. Next, I describe what I
This document is an introduction to the new Component Model of CORBA 3. The document corresponds closely to the transcription of the talk on the CCM (the CORBA Component Model) I gave at the Primer Taller
More informationA NEW DISTRIBUTED COMPOSITE OBJECT MODEL FOR COLLABORATIVE COMPUTING
A NEW DISTRIBUTED COMPOSITE OBJECT MODEL FOR COLLABORATIVE COMPUTING Güray YILMAZ 1 and Nadia ERDOĞAN 2 1 Dept. of Computer Engineering, Air Force Academy, 34807 Yeşilyurt, İstanbul, Turkey 2 Dept. of
More informationCAS 703 Software Design
Dr. Ridha Khedri Department of Computing and Software, McMaster University Canada L8S 4L7, Hamilton, Ontario Acknowledgments: Material based on Software by Tao et al. (Chapters 9 and 10) (SOA) 1 Interaction
More informationDISTRIBUTED SYSTEMS [COMP9243] Lecture 7: Middleware MIDDLEWARE. Distributed Object based: Slide 1. Slide 3. Message-oriented: Slide 4
KINDS OF MIDDLEWARE DISTRIBUTED SYSTEMS [COMP9243] Lecture 7: Middleware Distributed Object based: Objects invoke each other s methods Server Slide 1 ➀ Introduction ➁ Distributed Object Middleware Remote
More informationDistributed systems. Distributed Systems Architectures. System types. Objectives. Distributed system characteristics.
Distributed systems Distributed Systems Architectures Virtually all large computer-based systems are now distributed systems. Information processing is distributed over several computers rather than confined
More informationSoftware Components and Distributed Systems
Software Components and Distributed Systems INF5040/9040 Autumn 2017 Lecturer: Eli Gjørven (ifi/uio) September 12, 2017 Outline Recap distributed objects and RMI Introduction to Components Basic Design
More information(9A05803) WEB SERVICES (ELECTIVE - III)
1 UNIT III (9A05803) WEB SERVICES (ELECTIVE - III) Web services Architecture: web services architecture and its characteristics, core building blocks of web services, standards and technologies available
More informationDistributed Systems Architectures. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 1
Distributed Systems Architectures Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 12 Slide 1 Objectives To explain the advantages and disadvantages of different distributed systems architectures
More informationDS 2009: middleware. David Evans
DS 2009: middleware David Evans de239@cl.cam.ac.uk What is middleware? distributed applications middleware remote calls, method invocations, messages,... OS comms. interface sockets, IP,... layer between
More informationLecture 06: Distributed Object
Lecture 06: Distributed Object Distributed Systems Behzad Bordbar School of Computer Science, University of Birmingham, UK Lecture 0? 1 Recap Interprocess communication Synchronous and Asynchronous communication
More informationMODELS OF DISTRIBUTED SYSTEMS
Distributed Systems Fö 2/3-1 Distributed Systems Fö 2/3-2 MODELS OF DISTRIBUTED SYSTEMS Basic Elements 1. Architectural Models 2. Interaction Models Resources in a distributed system are shared between
More informationMiddleware. Adapted from Alonso, Casati, Kuno, Machiraju Web Services Springer 2004
Middleware Adapted from Alonso, Casati, Kuno, Machiraju Web Services Springer 2004 Outline Web Services Goals Where do they come from? Understanding middleware Middleware as infrastructure Communication
More informationMODELS OF DISTRIBUTED SYSTEMS
Distributed Systems Fö 2/3-1 Distributed Systems Fö 2/3-2 MODELS OF DISTRIBUTED SYSTEMS Basic Elements 1. Architectural Models 2. Interaction Models Resources in a distributed system are shared between
More informationIncorporating applications to a Service Oriented Architecture
Proceedings of the 5th WSEAS Int. Conf. on System Science and Simulation in Engineering, Tenerife, Canary Islands, Spain, December 16-18, 2006 401 Incorporating applications to a Service Oriented Architecture
More information02 - Distributed Systems
02 - Distributed Systems Definition Coulouris 1 (Dis)advantages Coulouris 2 Challenges Saltzer_84.pdf Models Physical Architectural Fundamental 2/58 Definition Distributed Systems Distributed System is
More information02 - Distributed Systems
02 - Distributed Systems Definition Coulouris 1 (Dis)advantages Coulouris 2 Challenges Saltzer_84.pdf Models Physical Architectural Fundamental 2/60 Definition Distributed Systems Distributed System is
More informationSAI/ST course Distributed Systems
SAI/ST course Distributed Systems 2013, Sep. 26 Oct 01 Lecture 3: Communication Agenda Overview Concepts Organization in layers IPC primitives Direct communication Indirect communication R.H. Mak 27-9-2013
More informationCORBA (Common Object Request Broker Architecture)
CORBA (Common Object Request Broker Architecture) René de Vries (rgv@cs.ru.nl) Based on slides by M.L. Liu 1 Overview Introduction / context Genealogical of CORBA CORBA architecture Implementations Corba
More informationAgent and Object Technology Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma. Distributed and Agent Systems
Agent and Object Technology Lab Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma Distributed and Agent Systems Prof. Agostino Poggi What is CORBA? CORBA (Common Object Request
More informationOutline. EEC-681/781 Distributed Computing Systems. The OSI Network Architecture. Inter-Process Communications (IPC) Lecture 4
EEC-681/781 Distributed Computing Systems Lecture 4 Department of Electrical and Computer Engineering Cleveland State University wenbing@ieee.org Outline Inter-process communications Computer networks
More informationCOMMUNICATION IN DISTRIBUTED SYSTEMS
Distributed Systems Fö 3-1 Distributed Systems Fö 3-2 COMMUNICATION IN DISTRIBUTED SYSTEMS Communication Models and their Layered Implementation 1. Communication System: Layered Implementation 2. Network
More informationVerteilte Systeme (Distributed Systems)
Verteilte Systeme (Distributed Systems) Karl M. Göschka Karl.Goeschka@tuwien.ac.at http://www.infosys.tuwien.ac.at/teaching/courses/ VerteilteSysteme/ Lecture 3: Communication (Part 2) Remote Procedure
More informationDistribution and Integration Technologies
Distribution and Integration Technologies Distributed Architectures Patterns and Styles 1 Distributed applications infrastructure ISP intranet wireless backbone desktop computer: server: laptops: tablets:
More informationExamining the New CORBA 3 Specifications
Examining the New CORBA 3 Specifications Jon Siegel, Ph.D. Director, TechnologyTransfer Object Management Group siegel@omg.org 508-820-4300 3/1/01 1 CORBA 3.0 Will Add -- Improved Java and Internet Integration
More informationOracle Tuxedo. CORBA Technical Articles 11g Release 1 ( ) March 2010
Oracle Tuxedo CORBA Technical Articles 11g Release 1 (11.1.1.1.0) March 2010 Oracle Tuxedo CORBA Technical Articles, 11g Release 1 (11.1.1.1.0) Copyright 1996, 2010, Oracle and/or its affiliates. All rights
More informationCommunication. Overview
Communication Chapter 2 1 Overview Layered protocols Remote procedure call Remote object invocation Message-oriented communication Stream-oriented communication 2 Layered protocols Low-level layers Transport
More informationAutomatic Code Generation for Non-Functional Aspects in the CORBALC Component Model
Automatic Code Generation for Non-Functional Aspects in the CORBALC Component Model Diego Sevilla 1, José M. García 1, Antonio Gómez 2 1 Department of Computer Engineering 2 Department of Information and
More informationThe Object Model Overview. Contents. Section Title
The Object Model 1 This chapter describes the concrete object model that underlies the CORBA architecture. The model is derived from the abstract Core Object Model defined by the Object Management Group
More informationCCM Component Definition
CCM Component Definition 1. Extended IDL 2. Equivalence 3. Component Implementation Definition Language (CIDL) Appendix A: Implementing a CCM Component 1. Extended IDL Overview -The CCM (CORBA 3.x) introduces
More informationDistributed Object-based Systems CORBA
CprE 450/550x Distributed Systems and Middleware Distributed Object-based Systems CORBA Yong Guan 3216 Coover Tel: (515) 294-8378 Email: guan@ee.iastate.edu March 30, 2004 2 Readings for Today s Lecture!
More informationCHAPTER - 4 REMOTE COMMUNICATION
CHAPTER - 4 REMOTE COMMUNICATION Topics Introduction to Remote Communication Remote Procedural Call Basics RPC Implementation RPC Communication Other RPC Issues Case Study: Sun RPC Remote invocation Basics
More informationAnnouncements. me your survey: See the Announcements page. Today. Reading. Take a break around 10:15am. Ack: Some figures are from Coulouris
Announcements Email me your survey: See the Announcements page Today Conceptual overview of distributed systems System models Reading Today: Chapter 2 of Coulouris Next topic: client-side processing (HTML,
More informationAdvanced Lectures on knowledge Engineering
TI-25 Advanced Lectures on knowledge Engineering Client-Server & Distributed Objects Platform Department of Information & Computer Sciences, Saitama University B.H. Far (far@cit.ics.saitama-u.ac.jp) http://www.cit.ics.saitama-u.ac.jp/~far/lectures/ke2/ke2-06/
More informationChapter 6 Enterprise Java Beans
Chapter 6 Enterprise Java Beans Overview of the EJB Architecture and J2EE platform The new specification of Java EJB 2.1 was released by Sun Microsystems Inc. in 2002. The EJB technology is widely used
More informationDISTRIBUTED OBJECTS AND REMOTE INVOCATION
DISTRIBUTED OBJECTS AND REMOTE INVOCATION Introduction This chapter is concerned with programming models for distributed applications... Familiar programming models have been extended to apply to distributed
More informationSystem types. Distributed systems
System types 1 Personal systems that are designed to run on a personal computer or workstation Distributed systems where the system software runs on a loosely integrated group of cooperating processors
More informationArchitecture of Distributed Systems Component-based Systems
Architecture of Distributed Systems 2017-2018 Component-based Systems Original : J.J Lukkien Revision: R.H. Mak 25-Oct-17 Rudolf Mak TU/e Computer Science 2II45-CBSE Goals of this lecture Students have
More informationDISTRIBUTED COMPUTER SYSTEMS
DISTRIBUTED COMPUTER SYSTEMS Communication Fundamental REMOTE PROCEDURE CALL Dr. Jack Lange Computer Science Department University of Pittsburgh Fall 2015 Outline Communication Architecture Fundamentals
More informationAppendix A - Glossary(of OO software term s)
Appendix A - Glossary(of OO software term s) Abstract Class A class that does not supply an implementation for its entire interface, and so consequently, cannot be instantiated. ActiveX Microsoft s component
More informationVerteilte Systeme (Distributed Systems)
Verteilte Systeme (Distributed Systems) Karl M. Göschka Karl.Goeschka@tuwien.ac.at http://www.infosys.tuwien.ac.at/teaching/courses/ VerteilteSysteme/ Lecture 4: Operating System Support Processes and
More informationCOMERA: COM Extensible Remoting Architecture
The following paper was originally published in the Proceedings of the 4th USENIX Conference on Object-Oriented Technologies and Systems (COOTS) Santa Fe, New Mexico, April 27-30, 1998 COMERA: COM Extensible
More informationAdvanced Distributed Systems
Course Plan and Department of Computer Science Indian Institute of Technology New Delhi, India Outline Plan 1 Plan 2 3 Message-Oriented Lectures - I Plan Lecture Topic 1 and Structure 2 Client Server,
More informationCS551 Object Oriented Middleware (II) Outline. Who is the OMG?
CS551 Object Oriented Middleware (II) (Chap. 4 of EDO) Yugi Lee STB #555 (816) 235-5932 yugi@cstp.umkc.edu www.cstp.umkc.edu/~yugi 1 Outline CORBA CORBA Object Model CORBA Interface Definition Language
More informationA Grid-Enabled Component Container for CORBA Lightweight Components
A Grid-Enabled Component Container for CORBA Lightweight Components Diego Sevilla 1, José M. García 1, Antonio F. Gómez 2 1 Department of Computer Engineering 2 Department of Information and Communications
More informationMohsin Qasim Syed Abbas Ali
2005-5-18 Final version Table of Content 1 -Introduction to CORBA...3 1.1 Overview...3 1.2 Why is CORBA important in a networked environment?... 4 1.3 HOW DOES CORBA WORKS?...4 1.4 CORBA Architecture...
More informationDistributed Systems Middleware
Distributed Systems Middleware David Andersson, 810817-7539, (D) Rickard Sandell, 810131-1952, (D) EDA 390 - Computer Communication and Distributed Systems Chalmers University of Technology 2005-04-30
More informationDistributed Information Systems
Distributed Objects and Remote Invocation Programming Models For Distributed Applications Objectives RPC and RMI. Remote invocation semantics. Implementation of RMI. References DSCD: Chapter 5 Conventional
More informationDISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN. Chapter 1. Introduction
DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN Chapter 1 Introduction Modified by: Dr. Ramzi Saifan Definition of a Distributed System (1) A distributed
More informationAdvanced Topics in Distributed Systems. Dr. Ayman A. Abdel-Hamid. Computer Science Department Virginia Tech
Advanced Topics in Distributed Systems Dr. Ayman A. Abdel-Hamid Computer Science Department Virginia Tech Communication (Based on Ch2 in Distributed Systems: Principles and Paradigms, 1/E or Ch4 in 2/E)
More informationDistributed Systems Principles and Paradigms. Distributed Object-Based Systems. Remote distributed objects. Remote distributed objects
Distributed Systems Principles and Paradigms Maarten van Steen VU Amsterdam, Dept. Computer Science steen@cs.vu.nl Chapter 10: Version: December 10, 2012 1 / 22 10.1 Architecture 10.1 Architecture Remote
More informationChapter 4 Communication
DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S. TANENBAUM MAARTEN VAN STEEN Chapter 4 Communication Layered Protocols (1) Figure 4-1. Layers, interfaces, and protocols in the OSI
More information6/20/2018 CS5386 SOFTWARE DESIGN & ARCHITECTURE LECTURE 5: ARCHITECTURAL VIEWS C&C STYLES. Outline for Today. Architecture views C&C Views
1 CS5386 SOFTWARE DESIGN & ARCHITECTURE LECTURE 5: ARCHITECTURAL VIEWS C&C STYLES Outline for Today 2 Architecture views C&C Views 1 Components and Connectors (C&C) Styles 3 Elements Relations Properties
More informationASPECTIX: A QUALITY-AWARE, OBJECT-BASED MIDDLEWARE ARCHITECTURE
ASPECTIX: A QUALITY-AWARE, OBJECT-BASED MIDDLEWARE ARCHITECTURE Franz J. Hauck, Ulrich Becker, Martin Geier, Erich Meier, Uwe Rastofer, Martin Steckermeier Informatik 4, University of Erlangen-Nürnberg,
More informationC# 6.0 in a nutshell / Joseph Albahari & Ben Albahari. 6th ed. Beijin [etc.], cop Spis treści
C# 6.0 in a nutshell / Joseph Albahari & Ben Albahari. 6th ed. Beijin [etc.], cop. 2016 Spis treści Preface xi 1. Introducing C# and the.net Framework 1 Object Orientation 1 Type Safety 2 Memory Management
More informationMTAT Enterprise System Integration. Lecture 2: Middleware & Web Services
MTAT.03.229 Enterprise System Integration Lecture 2: Middleware & Web Services Luciano García-Bañuelos Slides by Prof. M. Dumas Overall view 2 Enterprise Java 2 Entity classes (Data layer) 3 Enterprise
More informationDistributed Systems. The main method of distributed object communication is with remote method invocation
Distributed Systems Unit III Syllabus:Distributed Objects and Remote Invocation: Introduction, Communication between Distributed Objects- Object Model, Distributed Object Modal, Design Issues for RMI,
More informationLecture 16. What is COM? Principles of COM. COM Design Principles. Example (UML Diagram) Microsoft IDL (MIDL) COM/DCOM February 23, 2005
What is? Lecture 16 /D February 23, 2005 = Common Model. Platform-independent, distributed OO system for client-server implementations. objects can be created in a variety of languages (like CORBA). Not
More informationJava Beans Component APIs for Java. Graham Hamilton JavaSoft
Java Beans Component APIs for Java Graham Hamilton JavaSoft Java Beans Java beans is a set of component APIs Allowing pluggable software components In an open, portable, platform-neutral way Java beans
More informationReflective Middleware. INF Tommy Gudmundsen
Reflective Middleware INF5360 11.03.2008 Tommy Gudmundsen tommygu@ifi.uio.no Papers presented Grace, P., Blair, G.S., Samual, S., "ReMMoC: A Reflective Middleware to Support Mobile Client Interoperability"
More informationCORBA and COM TIP. Two practical techniques for object composition. X LIU, School of Computing, Napier University
CORBA and COM TIP Two practical techniques for object composition X LIU, School of Computing, Napier University CORBA Introduction Common Object Request Broker Architecture (CORBA) is an industry-standard
More informationTechniques for Dynamic Swapping in the Lightweight CORBA Component Model
in the Lightweight CORBA Component Model jai@dre.vanderbilt.edu www.dre.vanderbilt.edu/~jai Dr. Aniruddha Gokhale gokhale@dre.vanderbilt.edu www.dre.vanderbilt.edu/~gokhale Dr. Douglas C. Schmidt schmidt@dre.vanderbilt.edu
More informationVision of J2EE. Why J2EE? Need for. J2EE Suite. J2EE Based Distributed Application Architecture Overview. Umair Javed 1
Umair Javed 2004 J2EE Based Distributed Application Architecture Overview Lecture - 2 Distributed Software Systems Development Why J2EE? Vision of J2EE An open standard Umbrella for anything Java-related
More informationSoftware Paradigms (Lesson 10) Selected Topics in Software Architecture
Software Paradigms (Lesson 10) Selected Topics in Software Architecture Table of Contents 1 World-Wide-Web... 2 1.1 Basic Architectural Solution... 2 1.2 Designing WWW Applications... 7 2 CORBA... 11 2.1
More informationAnalysis of Passive CORBA Fault Tolerance Options for Real-Time Applications Robert A. Kukura, Raytheon IDS Paul V. Werme, NSWCDD
Analysis of Passive CORBA Fault Tolerance Options for Real-Time Applications Robert A. Kukura, Raytheon IDS Paul V. Werme, NSWCDD PASSIVE CORBA FAULT TOLERANCE All clients send method invocations only
More informationCOM+ OVERVIEW OF MICROSOFTS COM, DCOM AND COM+ COMPONENT TECHNOLOGIES DCOM - COM+ Peter R. Egli peteregli.net. peteregli.net. 1/20 Rev. 1.
COM, DCOM - COM+ DCOM, COM+ OVERVIEW OF MICROSOFTS COM, DCOM AND COM+ COMPONENT TECHNOLOGIES Peter R. Egli 1/20 Contents 1. Evolution of COM 2. COM, DCOM, ActiveX, OLE, COM+ 3. Structure of COM Components
More informationApplication Servers in E-Commerce Applications
Application Servers in E-Commerce Applications Péter Mileff 1, Károly Nehéz 2 1 PhD student, 2 PhD, Department of Information Engineering, University of Miskolc Abstract Nowadays there is a growing demand
More informationReference Model of Open Distributed Processing (RM-ODP): Introduction
Reference Model of Open Distributed Processing (RM-ODP): Introduction Kerry Raymond kerry@dstc.edu.au CRC for Distributed Systems Technology Centre for Information Technology Research University of Queensland
More informationCommunication Paradigms
Communication Paradigms Nicola Dragoni Embedded Systems Engineering DTU Compute 1. Interprocess Communication Direct Communication: Sockets Indirect Communication: IP Multicast 2. High Level Communication
More information