Distributed Object Computing

Slides:



Advertisements
Presentazioni simili
UNIVERSITÀ DEGLI STUDI DI MODENA E REGGIO EMILIA
Advertisements

EUCIP IT Administrator Modulo 4 - Uso Esperto della Rete Reti informatiche: Introduzione AICA © 2005.
/ fax
Architetture dei sistemi distribuiti Prof
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità D1 Architetture di rete.
INTRODUZIONE Il framework.NET. Un po di storia Sin dalla prima versione del sistema operativo Windows (1990 circa), nacque la necessità di far comunicare.
Consumare Web Service Andrea Saltarello
Web Services.
Java Enterprise Edition (JEE)
Massa Laura Mela Enrica
Passaggio dei parametri
Gestione del processore
una interfaccia internet per il sistema Momis
Università degli Studi di Modena e Reggio Emilia Facoltà dIngegneria - sede di Modena Corso di Laurea in Ingegneria Informatica Interoperabilità di componenti.
Architetture dei sistemi distribuiti
Tecnologie di implementazione
Component Object Model (COM) & Distributed COM (DCOM) Appunti di Windows & Dynamic Data Exchange (DDE) (1987) Object Linking and Embedding 1 (OLE 1) &
Integrazione delle Informazioni Necessità di accedere ai dati di campo da qualunque parte dellimpianto Visione omogenea.
Organizzazione di una rete Windows Server Client Il ruolo dei computer I computer in una rete possono svolgere le funzioni di client e server dei.
1 9: Progettazione Architetturale Obiettivo: stabilire la struttura globale di un sistema software Descriveremo diversi tipi di modello di architettura,
Architettura Three Tier
1 Programmazione ad oggetti in Java E.Mumolo, DEEI
Introduzione al linguaggio Java
eliana minicozzi linguaggi1a.a lezione2
1 STATO DELLINTEGRAZIONE TRA I 4 PROGETTI AVVISO 1575/2004 ATTIVITA DEL GRUPPO TECNICO OPERATIVO Riunione del Comitato Tecnico sullInteroperabilità MUR,
Architettura del World Wide Web
Perché.Net e non più COM/DCOM ? Superamento dei problemi di COM: Richiede una infrastruttura "non semplice" da ogni applicazione (ad esempio Class Factory.
Future Astronomical Software Environment
Ingegneria del software I
Le classi Definizione di classe Attributi e metodi di una classe Costruttori e distruttori Private e public Funzioni friend Il puntatore this.
4 Cosa è una rete? ã Punto di vista logico: sistema di dati ed utenti distribuito ã Punto di vista fisico: insieme di hardware, collegamenti, e protocolli.
Introduzione ad ASP.net
C# LE BASI 2007 Prima lezione - Introduzione.
1 L!ve T!tle: software per la consultazione degli andamenti dei titoli di borsa online Reti di Calcolatori LS Nuzzi Nicola Mat
Meteo Service Corso di Reti di Calcolatori LS Casarini Stefano matr
Introduzione a C#.
Università Politecnica delle Marche
Scheda Ente Ente Privato Ente Pubblico. 2ROL - Richieste On Line.
Cosa sono i sistemi distribuiti Prof. Andrea Omicini Corso di Sistemi Distribuiti A.A. 2001/2002 Parte I.
Introduzione alla programmazione Object Oriented
Configurazione in ambiente Windows Ing. A. Stile – Ing. L. Marchesano – 1/23.
Sistemi Informativi sul Web
Fopndamenti di programmazione. 2 La classe String Una stringa è una sequenza di caratteri La classe String è utilizzata per memorizzare caratteri La classe.
Corso di Web Services A A Domenico Rosaci 1. Introduzione
Pippo.
Distributed System ( )7 TCP/IP four-layer model.
Protocolli e architetture per WIS. Web Information Systems (WIS) Un Web Information System (WIS) usa le tecnologie Web per permettere la fruizione di.
Programmazione ad oggetti
Lezione 1 Panoramica sui paradigmi di programmazione
TECNOLOGIE DELL’INFORMAZIONE E DELLA COMUNICAZIONE PER LE AZIENDE Materiale di supporto alla didattica.
CORBA-Master;1.ppt Introduzione a CORBA Fabiano Cattaneo - CEFRIEL Via Fucini, Milano Tel. (02) FAX (02)
1 Osservazioni Generali Struttura di programma Gerarchia di classi: overloading, overriding, e dispatching Analisi ed esecuzione Modificabilità e condivisione.
CORBA;2.ppt Object Management Group’s Object Management Architecture CORBA Fabiano Cattaneo - CEFRIEL Via Fucini, Milano Tel. (02)
We make it 1 L’ infrastruttura Virtuale e la gestione Dinamica Fabiano Finamore Infrastructure Optimization Sales Brain Force Italia.
Fondamenti di Informatica 2 Ingegneria Informatica Docente: Giovanni Macchia a.a
TW Asp - Active Server Pages Nicola Gessa. TW Nicola Gessa Introduzione n Con l’acronimo ASP (Active Server Pages) si identifica NON un linguaggio di.
MCSA Mobile Code System Architecture Infrastruttura a supporto della code mobility Pierfrancesco Felicioni Reti di Calcolatori L.S. 2005/2006.
PiattaformePiattaformePiattaformePiattaforme Antonio Cisternino 11 Marzo 2005 OpenSourceOpenSourceOpenSourceOpenSource e ProprietarieProprietarieProprietarieProprietarie.
Capitolo 1 Il middleware
Sistemi operativi di rete Ing. A. Stile – Ing. L. Marchesano – 1/18.
Corso di Ingegneria del Web A A Domenico Rosaci 1. Sistemi Distribuiti Introduzione.
Servizio di visualizzazione da remoto e condivisione di album fotografici Autore: Chiarini Mattia matricola
 Primo livello: Field Management. A questo livello le informazioni sono relative ai dispositivi di campo  Secondo livello:
Ingegneria del software Modulo 3 -Tecniche d’implementazione Unità didattica 1 -Ingegneria dei componenti Ernesto Damiani Università degli Studi di Milano.
Mobile Agent and Enterprise Architecture Integration Il Gestore di Librerie e Servizi Lambertini Riccardo.
Ingegneria del software Modulo 3 -Tecniche di implementazione Unità didattica 1 -Ingegneria dei componenti Ernesto Damiani Università degli Studi di Milano.
Architetture software
UML Unified Modelling Language Linguaggio per la modellazione unificato.
Sistemi distribuiti Sistema distribuito indica una tipologia di sistema informatico costituito da un insieme di processi interconnessi tra loro in cui.
Transcript della presentazione:

Distributed Object Computing Ing. Massimo Mecella mecella@iol.it

Evoluzione Architetturale Centralizzata Monolitica anni ‘60 -’70 Reti locali di PC anni ‘80 Reti Client Server anni ‘80 - ‘90 Internet “The network is the computer”

Esigenze e Nuove Esigenze Le informazioni e le organizzazioni sono distribuite Scalabilità Condivisione Efficienza Sicurezza Integrare l’esistente Trovare un modello che semplifichi il concetto di interoperabilita tra applicazioni distribuite Permettere il riuso a diversi livelli

L’approccio OO Object Orientation is a technique for system modeling...using it we model the system as a number of objects that interact [I. Jacobson] SW riutilizzabile: applicazioni preesistenti (legacy) possono essere intelligentemente recuperate (incapsulate) e riutilizzate a differenti livelli di integrazione via incapsulamento e ereditarietà SW estendibile (incrementabile): l’aggiunta di nuovi tipi di oggetti, in molti casi, non influenza minimamente gli altri via ereditarietà e polimorfismo

DC + OO Distributed Computing (DC) già risponde alla esigenza di decentralizzare l’elaborazione OO offre un modello più naturale e flessibile semplificazione del concetto di interoperabilità tra risorse distribuite

Dall’OO alla DOC Gli oggetti possono risiedere in processi o macchine diverse

Cosa manca? Comunicazione Sicurezza Localizzazione …. ?

Broker Architecture ORB (Object Request Broker): elemento chiave di comunicazione per gestire l’interoperabilità tra oggetti BROKER

Vantaggi del Broker Consente agli oggetti di fare richieste e ricevere risposte in modo trasparente in un ambiente distribuito Consente di localizzare gli oggetti remoti Gestisce la sicurezza delle comunicazioni

Broker principi (1) Interfaccia Implementazione

Broker principi (2) CLIENTE Operation() in args out args + return value

CORBA L'architettura CORBA (Common Object Request Broker Architecture) è un framework standard a livello di middleware per l'interoperabilità tra oggetti in sistemi distribuiti eterogenei Object Request Broker IDL Framework di servizi definiti

Interface Definition Language E’ un linguaggio di definizione delle interfacce specifica i servizi che un oggetto mette a disposizione è indipendente dal linguaggio di programmazione è simile al sottoinsieme del linguaggio C++ per la dichiarazione dei tipi ha il concetto di interfaccia derivata che eredita operazioni e tipi definiti nell'interfaccia base

Terminologia Il client è un applicazione che “usa” gli oggetti messi a disposizione dalle interfacce IDL Un server è un programma che mette a disposizione istanze di oggetti definiti da un interfaccia IDL

Architettura Common Object Request Broker Archtecture (CORBA) Domain Interfaces CORBAFacilities CORBAServices e.g. mail, printing, help, GUI Application Interfaces e.g. naming,transactions, security, time

ORB

COS Common Object Services Transactions Naming Security ...il supporto necessario I servizi messi a disposizione da Corba aiutano a determinare gli oggetti che sono in rete, ne permettono la creazione, il mantenimento, l’ accesso e l’invocazione dei loro metodi

L’object model di CORBA client object implementation request Viene enfatizzato il ruolo di un'entità (client) in grado di richiedere servizi a un oggetto (server) L’object implementation è l'insieme di codice e dati che effettivamente implementa, ovvero che realizza il comportamento dell'oggetto server (come specificato dalla sua interfaccia)

Server CORBA in C++

Client CORBA in C++ e Java Individuo. idl Cli i _ main . java IDL Java Compiler Java Compiler ORB Library IDL Java class st_Individuo Individuo_var Stub Java Applet Individuo. idl Cli _ main .cc IDL C++ Compiler C++ , Link ORB Library class Client IndividuoC.cc Stub Individuo.hh

Distribuited Component Object Model (1) Specifiche di interoperabilità a livello binario tra componenti software Infrastruttura software per la creazione, la comunicazione e la gestione di componenti Sviluppato da Microsoft

Distribuited Component Object Model (2) Interazione tra componenti by insiemi di funzioni denominate interfacce Rappresentazione interfacce basata su puntatori Vtable (Virtual function table): array di puntatori ai metodi Per invocare un metodo si deve avere un puntatore all’interfaccia pvtbl Una classe è una implementazione di un’insieme di interfacce Consente la location trasparency

Server DCOM Object Interfacce dell’oggetto Class IClassFactory Factory Implementazione Interfacce Object indipendente dell’oggetto dal tipo di server Class IClassFactory Factory Implementazioni diverse Meccanismi per per DLL e EXE l’esposizione di class factory Meccanismi di unloading

Il modello di comunicazione DCOM

Ereditarietà secondo DCOM - Contenimento

Ereditarietà secondo DCOM - Aggregazione Interfacce Esterne Componente Esterno A A B B Componente interno aggregato in un C C Componente Esterno