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

24
Análise comparativa entre as especificações de objetos distribuídos DCOM e CORBA Universidade Regional de Blumenau Centro de Ciências Exatas e Naturais Acadêmico: Rubens Bósio Orientador: Marcel Hugo Blumenau, julho de 2000

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

Page 1: Análise comparativa entre as especificações de objetos ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/2000-1rubensbosioap.pdfComparativo Maturidade: Está apenas começando, porém

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

Page 2: Análise comparativa entre as especificações de objetos ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/2000-1rubensbosioap.pdfComparativo Maturidade: Está apenas começando, porém

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

Page 3: Análise comparativa entre as especificações de objetos ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/2000-1rubensbosioap.pdfComparativo Maturidade: Está apenas começando, porém

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.

Page 4: Análise comparativa entre as especificações de objetos ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/2000-1rubensbosioap.pdfComparativo Maturidade: Está apenas começando, porém

IntroduçãoOrientação a Objetos

Sistemas Distribuídos

Objetos Distribuídos

Page 5: Análise comparativa entre as especificações de objetos ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/2000-1rubensbosioap.pdfComparativo Maturidade: Está apenas começando, porém

Objetos Distribuídos

� Mesmas características dos objetos normais.

� Arquitetura Cliente-Servidor.

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

Page 6: Análise comparativa entre as especificações de objetos ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/2000-1rubensbosioap.pdfComparativo Maturidade: Está apenas começando, porém

� 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

Page 7: Análise comparativa entre as especificações de objetos ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/2000-1rubensbosioap.pdfComparativo Maturidade: Está apenas começando, porém

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

Page 8: Análise comparativa entre as especificações de objetos ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/2000-1rubensbosioap.pdfComparativo Maturidade: Está apenas começando, porém

DCOM

� Microsoft� Surgiu com o lançamento do

Windows NT 4.0� Baseado na tecnologia COM

Page 9: Análise comparativa entre as especificações de objetos ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/2000-1rubensbosioap.pdfComparativo Maturidade: Está apenas começando, porém

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

Page 10: Análise comparativa entre as especificações de objetos ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/2000-1rubensbosioap.pdfComparativo Maturidade: Está apenas começando, porém

Protótipo

Requisição dos Dados (SQL)

Retorno dosDados

Page 11: Análise comparativa entre as especificações de objetos ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/2000-1rubensbosioap.pdfComparativo Maturidade: Está apenas começando, porém

Protótipo

Efetuar consulta

Usuario

Envia SQL

Caso de Uso

Page 12: Análise comparativa entre as especificações de objetos ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/2000-1rubensbosioap.pdfComparativo Maturidade: Está apenas começando, porém

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

Page 13: Análise comparativa entre as especificações de objetos ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/2000-1rubensbosioap.pdfComparativo Maturidade: Está apenas começando, porém

Comparativo

Infra-estrutura:baseada em serviços do Windows

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

DCOMCORBA

Page 14: Análise comparativa entre as especificações de objetos ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/2000-1rubensbosioap.pdfComparativo Maturidade: Está apenas começando, porém

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

Page 15: Análise comparativa entre as especificações de objetos ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/2000-1rubensbosioap.pdfComparativo Maturidade: Está apenas começando, porém

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

Page 16: Análise comparativa entre as especificações de objetos ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/2000-1rubensbosioap.pdfComparativo Maturidade: Está apenas começando, porém

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

Page 17: Análise comparativa entre as especificações de objetos ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/2000-1rubensbosioap.pdfComparativo Maturidade: Está apenas começando, porém

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

Page 18: Análise comparativa entre as especificações de objetos ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/2000-1rubensbosioap.pdfComparativo Maturidade: Está apenas começando, porém

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

Page 19: Análise comparativa entre as especificações de objetos ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/2000-1rubensbosioap.pdfComparativo Maturidade: Está apenas começando, porém

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

Page 20: Análise comparativa entre as especificações de objetos ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/2000-1rubensbosioap.pdfComparativo Maturidade: Está apenas começando, porém

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

Page 21: Análise comparativa entre as especificações de objetos ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/2000-1rubensbosioap.pdfComparativo Maturidade: Está apenas começando, porém

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

Page 22: Análise comparativa entre as especificações de objetos ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/2000-1rubensbosioap.pdfComparativo Maturidade: Está apenas começando, porém

Considerações Finais

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

Page 23: Análise comparativa entre as especificações de objetos ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/2000-1rubensbosioap.pdfComparativo Maturidade: Está apenas começando, porém

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.

Page 24: Análise comparativa entre as especificações de objetos ...dsc.inf.furb.br/arquivos/tccs/apresentacoes/2000-1rubensbosioap.pdfComparativo Maturidade: Está apenas começando, porém

Trabalhos futuros

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

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