La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Distributed Object Computing

Presentazioni simili


Presentazione sul tema: "Distributed Object Computing"— Transcript della presentazione:

1 Distributed Object Computing
Ing. Massimo Mecella

2 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”

3 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

4 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

5 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

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

7 Cosa manca? Comunicazione Sicurezza Localizzazione …. ?

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

9 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

10 Broker principi (1) Interfaccia Implementazione

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

12 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

13 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

14 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

15 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

16 ORB

17 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

18 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)

19 Server CORBA in C++

20 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

21 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

22 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

23 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

24 Il modello di comunicazione DCOM

25 Ereditarietà secondo DCOM - Contenimento

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


Scaricare ppt "Distributed Object Computing"

Presentazioni simili


Annunci Google