Análise comparativa entre as especificações de objetos...

Post on 17-Mar-2021

0 views 0 download

Transcript of Análise comparativa entre as especificações de objetos...

Análise comparativa entre as especificações de objetos distribuídos

DCOM e CORBA

Universidade Regional de BlumenauCentro de Ciências Exatas e Naturais

Acadêmico: Rubens BósioOrientador: Marcel Hugo

Blumenau, julho de 2000

Roteiro� Objetivos� Introdução� Objetos Distribuídos� CORBA� DCOM� Especificação do Protótipo� Comparação� Considerações Finais

Objetivos

� Fazer um protótipo de uma ferramenta de consulta a banco de dados de forma remota.

� Fazer um estudo das principais características das duas tecnologias de desenvolvimento de objetos distribuídos: DCOM e CORBA.

IntroduçãoOrientação a Objetos

Sistemas Distribuídos

Objetos Distribuídos

Objetos Distribuídos

� Mesmas características dos objetos normais.

� Arquitetura Cliente-Servidor.

� Necessitam de infra-estrutura (barramentos) para viabilizar a comunicação

� Object Management Group� Mais de 750 empresas (IBM, HP, Sun, DEC,

Microsoft, Netscape, etc.)

� “...estabelecer guias e especificações de gerência de objetos para a indústria, visando prover uma base comum para o desenvolvimento de aplicações distribuídas”

CORBA

CORBA

Repositório de Interface Compilador IDL Repositório de Implementação

Cliente Implementação do Objeto(Servidor)Ref.

OBJ

Parâmetros de entrada

Método ()

Parâmetros de Saída + valores de retorno

DII IDLSTUBS

INTERFACE

ORB

IDLSKELETON

DII

ADAPTADOR DE OBJETO

NÚCLEO ORB GIOP/IIOP

Interface padrão

ORB – Interface específica

Mapeamento padrão de linguagem

Protocolo padrão

Fonte: [SCH1999]

Arquitetura

DCOM

� Microsoft� Surgiu com o lançamento do

Windows NT 4.0� Baseado na tecnologia COM

DCOMArquitetura

Objeto Cliente Objeto Proxy Stub Objeto Servidor

Provedor de

Segurança

DCE RPC

Pilha de PRotocolo

Provedor de

Segurança

DCE RPC

Pilha de PRotocolo

OLE 32

SCMSCM

Protocolo de

rede DCOM

CoCreateInstance

Ativação Remota

CoCreateInstance

Protótipo

Requisição dos Dados (SQL)

Retorno dosDados

Protótipo

Efetuar consulta

Usuario

Envia SQL

Caso de Uso

Protótipo

0,n

Servidor

Qtd_ConexoesLista_Conexoes

Valida_Usuario( )Executa_SQL( )Conecta( )Disconecta( )Atualiza_Lista_Conexoes( )

1

Cliente

UsuarioSenha

create( )conecta( )executa_Sql( )disconecta( )destroy( )

Diagrama de Classes

Comparativo

Infra-estrutura:baseada em serviços do Windows

Infra-estrutura:desenvolvida separadamente tornando-se assim independente de plataforma

DCOMCORBA

Comparativo

Maturidade:Está apenas começando, porém possui implementações construídas com sucesso.

Maturidade:Possui implementações longe do ciclo de maturidade

Nível de abstração:Mantém um alto nível de abstração por conseguir um ponteiro para o objeto servidor.

Nível de abstração:O cliente obtém uma referência para o objeto servidor.

DCOMCORBA

Comparativo/PerformanceAmbiente

Pentium III – 500 MHz

64 Mb Memória

Windows 2000

Computador A

Pentium 233 MHz

64 Mb Memória

Windows NT 4

Computador B

AMD K6 II - 500 MHz

64 Mb Memória

Windows 2000

Computador C

Comparativo/PerformanceExecução Local (computador A)

Execução local (1 máquina)

0,000

5,000

10,000

15,000

20,000

25,000

30,000

35,000

40,000

Execução

Tem

po (e

m s

egun

dos)

DCOM

CORBA

DCOM 30,214 27,169 26,779 27,269 27,109

CORBA 36,603 27,720 28,451 27,860 28,771

1 2 3 4 5

Cliente

Computador C

Servidor

Banco de Dados

Computador ASQL

Dados

Comparativo/PerformanceExecução com cliente remoto

E x e c u ç ã o c o m a p e n a s o c lie n te re m o to

2 8 ,0 0 0

2 9 ,0 0 0

3 0 ,0 0 0

3 1 ,0 0 0

3 2 ,0 0 0

3 3 ,0 0 0

3 4 ,0 0 0

E x e c u ç ã o

Tem

po (

em s

egun

dos)

D C O M

C O R B A

D C O M 3 2 ,9 2 7 3 0 ,2 6 3 2 9 ,8 4 3 3 0 ,1 0 3 2 9 ,9 8 3

C O R B A 3 2 ,6 2 7 3 0 ,3 8 4 3 0 ,4 3 3 3 0 ,7 7 4 3 0 ,8 1 5

1 2 3 4 5

Comparativo/Performance

Cliente

Servidor

Computador B

Banco de Dados

Computador ASQL

Dados

Execução com banco remoto

E x e c u ç ã o c o m a p e n a s o b a n c o d e d a d o s re m o to

4 0 ,0 0 0

4 5 ,0 0 0

5 0 ,0 0 0

5 5 ,0 0 0

6 0 ,0 0 0

E x e c u ç ã o

Tem

po (

em s

egun

dos)

D C O M

C O R B A

D C O M 5 2 ,5 1 5 4 7 , 5 2 8 4 7 ,3 5 8 4 6 , 6 3 7 4 6 ,7 7 7

C O R B A 5 5 ,5 9 0 4 9 , 0 5 1 4 9 ,2 3 1 4 8 , 5 0 0 4 9 ,2 4 1

1 2 3 4 5

Comparativo/Performance

Servidor

Computador B

Banco de Dados

Computador ASQL

Dados

Cliente

Computador CSQL

Dados

Execução com banco remoto

E x e c u ç ã o c o m t r ê s c a m a d a s r e m o ta s

4 7 , 0 0 0

4 8 , 0 0 0

4 9 , 0 0 0

5 0 , 0 0 0

5 1 , 0 0 0

5 2 , 0 0 0

5 3 , 0 0 0

5 4 , 0 0 0

E x e c u ç ã o

Tem

po (

em s

egun

dos)

D C O M

C O R B A

D C O M 5 0 , 1 9 2 4 9 , 5 0 2 4 9 , 3 3 1 4 9 , 7 1 1 4 9 , 6 4 1

C O R B A 5 3 , 5 2 7 5 0 , 9 9 4 5 0 , 7 0 3 5 0 , 7 9 3 5 1 , 1 8 3

1 2 3 4 5

Comparativo/PerformanceMédia

Média de todas as execuções

34,000

36,000

38,000

40,000

42,000

44,000

46,000

Execução

Tem

po (

em s

egun

dos)

DCOM

CORBA

DCOM 41,462 38,616 38,328 38,430 38,378

CORBA 44,587 39,537 39,705 39,482 40,003

1 2 3 4 5

Considerações Finais

� Os objetivos foram alcançados

� O.D. atendem muitas necessidades em nível de desenvolvimento e em nível mercadológico

� Questão de tempo para Objetos distribuídos se tornar algo comum

Considerações Finais

� O Delphi se mostrou uma boa ferramenta para DCOM, porém bastante limitada com relação ao CORBA

Considerações Finais

� Vantagem do CORBA por ser independente de plataforma

� Não se pode negar a representatividade da Microsoft no mercado, o que torna o DCOM uma tecnologia competitiva.

Trabalhos futuros

� Estudo de outra ferramenta de desenvolvimento com suporte a CORBA e DCOM

� Extensão do trabalho atual para o ambiente de Internet