55) Com’è realizzato il binding in CORBA?

Tramite il linguaggio di specifica dell’interfaccia (CORBA IDL) che consente binding (collegamento ai componenti) statico e dinamico. Ciò permette la realizzazione del mapping su linguaggi diversi con proprietà diverse.

binding statico:

uso di stub opportuni e di livello di RPC

le decisioni sono prese prima dell’esecuzione

binding dinamico:

ogni richiesta viene passata all'ORB

il messaggio viene passato dall'ORB all'adattatore dell'oggetto

modalità sincrone ed asincrone di richiesta

Il binding dinamico è possibile tramite il servizio di naming detto Object Repository, che funziona da gestore dei nomi del sistema:

per ogni richiesta, il cliente trova le interfacce per soddisfarla e può rivolgersi in modo dinamico all'ORB per ritrovare diverse implementazioni del servizio.

l’Object repository contiene informazioni di interfaccia per invocazioni dinamiche, controlli, ispezioni run-time, ecc..

il sistema può quindi evolvere in modo dinamico, agganciandosi ai nuovi componenti, che non sono stati previsti staticamente.

l’organizzazione delle tabelle interne dell’Object Repository avviene tramite il riconoscimento di contenuto (contained) e contenitore (container)

uno stesso ORB può avere accesso a repository diversi.

 


Back
Index
Next