arquitetura e objetos distribuídos em corba aula 3
Post on 13-Jan-2022
5 Views
Preview:
TRANSCRIPT
Arquitetura e Objetos Distribuídos em CORBA
Aula 3
Especificações OMAObject Web
The Client/Server Evolution
O que é a tecnologia CORBA?
• CORBA• Common Object Request Broker Architecture
– Uma camada de software que distribui objetos – Oferece uma série de serviços de objeto– É padonizada pela OMG
• IDL - Interface Definition Language – Padrão para definição dos Serviços dos objetos– Linguagem semelhate ao C– Portabilidade para Java, C++, Delphi, Smalltalk, etc..– Permite integração entre sistemas heterogêneos.
OMA – Object Management Architecture
Integração Cliente/Servidor
Requisições de Objeto
Invocamétodo () no
objeto Z
Objeto Zmétodo()
IDLIDL
ORB – barramento de objetosObject Request BrokerOs serviços são distribuidos na forma deObjetos em um barramento
Estrutura do CORBA 2.0
CORBA algumas características
• Invocação estática– Os parâmetros podem ser conhecidos
• Invocação dinâmica– Os parâmetros podem ser “descobertos”
• Escalabilidade– Criação de uma rede de serviços intergalática
• Segurança, Transparência e Controle– Serviços disponíveis pela arquitetura
• Coexistência com sistemas atuais (legados)
Evolução dos Componentes
Anatomia do CORBA 2.0
Cliente
interface
Servico
_STUB _SKELTON
BOAORB
IIOP - Internet InterORB Protocol
A IDL modela as interfaces
AccountA linguagem IDL suporta Os princípios da Orientação a Objetos
float balance
makeDepositmakeWithdrawal
Exemplo de interface IDL
// IDLinterface Account{//Attributesattribute float balance;readonly attribute string owner;//Operationsvoid makeDeposit(in float amount,out float newBalance);void makeWithdrawal(in float amount,out float newBalance);};
Account
float balance
makeDepositmakeWithdrawal
idl2java
Interface.idl idl2java
InterfaceHolder.javaCliente
InterfaceHelper.java
_st_Interface
_sk_Interface
_InterfaceImplBase.java
Interface.javaServidor
VisiBroker for Java
_exemplo_Interface.java
CORBA e Java
• O uso de Java na Arquitetura CORBA ...– ... Dá mobilidade de código.– ... Facilita o CORBA para a WEB.
• Java “concorre” com CORBAno RMI e EJB (alternativas semelhantes)
Método para desenvolvimento
Análise
Projeto
CodigoModelo
ServidorJava/outras
InterfaceIDL
ClienteJava/outras
ModelagemUML/CORBA
ImplementaçãoCORBA/Java
Integração entre as tecnologias
JavaAmbiente de Implementacao
CORBAArquitetura da Solucao
Dominio do Problema
UMLAnalise e Projeto
Aplicações Distribuídas
• Aplicações que são funcionalmente separadas em processos distintos rodando em computadores diferentes sobre uma rede.
• Os processos interoperam para resolver um problema computacional comum.
• Consistem de interface de usuário, dados do usuário e os processos em diferentes computadores.
Arquitetura Cliente/Servidor
• Anos 90– Capacidade dos Desktops– Redes Locais– Técnicas de Acesso a bases de dados– Interfaces Gráficas– Principal modelo escolhido para as soluções fornecidas
pela Computação Distribuída.
Arquitetura Cliente/Servidor
• Uma aplicação distribuída é conceitualmente modelada para ser composta por dois processos cooperantes: o processo-cliente e o processo servidor.
Componentes da Computação Distribuída
• Controle da Concorrência• Rede de Computadores• Chamadas Remotas a Procedimentos• Serviços de Nomes e Diretórios
Distribuídos• Sistemas de Arquivos Distribuídos• SGBDs Cliente/Servidor
Componentes da Computação Distribuída
• Interfaces Gráficas• Sistemas de Correio Eletrônico• Sistemas de Processamento de Transações On-
Line ( OLTP )• Sistemas de Gerenciamento de Redes• Serviços de Segurança• Servidores de Objetos Distribuídos• Tecnologia Web e a Internet• Middleware ( camada de distribuição )
Middleware
• Middleware é um software que permite elementos de aplicações interoperarem através de redes, apesar das diferenças nos protocolos de comunicação, arquiteturas de sistemas, sistemas operacionais, bases de dados e outro serviços de aplicação.
(Rymer 1996)
Objetos
• Os objetos fornecem uma forma para organizar a complexidade nos modernos sistemas de computação.
• A combinação natural de dados, comportamento e a separação explícita entre interface e implementação, proporcionam uma solução ótima para a distribuição de dados e processos de uma aplicação.
Objetos Distribuídos
• Objetos podem ser usados para construir aplicações distribuídas seguindo o modelo Cliente/Servidor.
• Assim, devem poder ser localizados e acessados através de uma rede de computadores.
Modelos de Objetos• Modelos definidos, seguindo o paradigma
de orientação a objetos, para servir de base para a construção de implementações de objetos distribuídos.
• SOM (System Object Model) - IBM
• COM (Component Object Model) - MicroSoft
• CORBA (Commom Object Request Broker Architecture) - OMG (Object Management Group)
Produtos para Computação Distribuída
• DCE (Distributed Computing Environment) OSF - Open Software Foundation) 1988
IBM, DEC, Bull, HP, Nixdorf, Apollo,Phillips, Siemens, Hitachi
• Produtos CORBA (diversos)• DCOM (MicroSoft)• DSOM (IBM) .... Muitos outros
Evolução de Tecnologias WEB
Modelo da Object WEB baseado em Java e CORBA
Tendências
Objetos DistribuídosComponentes de SW
Agentes MóveisRedes e Gerência
Segurança em Redes
Objetos Distribuídos
MOM versus RPC
Server Framework Adaptor
Objeto Composto em CORBA
Documentos Compostos
• É um documento composto de textos, gráficos, planilhas eletrônicas, elementos da multimídia (áudio, imagens).
• Um documento composto nada mais é que uma coleção (container) visualmente organizada de componentes.
Frameworks
• Frameworks de documentos compostos –OLE e OpenDoc proporcionam duas tecnologias chaves: 1) Uma base visual de componentes para criar browsers Web abertos.2) A tecnologia de containers para distribuição, visualização e armazenagem de componentes relacionados e seus dados.
Tecnologias para Documentos Compostos
• OpenDoc• Em março de 1996, a OMG adotou
OpenDoc como a base para sua tecnologia de documento composto. Isso significa que CORBA agora tem uma arquitetura consistente para ambos os lados, o cliente e o servidor.
Tecnologias para Documentos Compostos
• OpenDoc torna possível clientes e servidores CORBA trocarem componentes via documentos móveis.
OpenDoc e CORBA
Business Object Facility
• OMG está correntemente especificando Frameworks para domínios de aplicação: manufatura, comércio eletrônico, transportes, telecomunicação, saúde, finanças, entre outros.
• Mas o que estes frameworks constroem ?O BOF define um componente CORBA genérico chamado, business object.
The Object Web II Vision
• Documentos compostos como browsers Web abertos:- O browser Web construído inteiramente de componentes.- O próprio browser é um container visual de componentes.- Um componente também pode imbutir outro componente.
The Object Web II Vision
• Um browser Web pode ser construído como um container OpenDoc ou OLE (Microsoft)
• O desktop é o browser.• A próxima geração de browsers Internet
consistirão de um conjunto de componentes e containers de documentos compostos.
• Onde você encontrará um destes browsers Web baseados em componentes ?
Evolução dos Browsers
Modelos de Cliente para Web
Segundo Modelo
• Tudo sobre o desktop é habilitado à Web. • A idéia que você será capaz de acessar a
Web de dentro de qualquer aplicação ou componente, sem executar um browser.
Terceiro Modelo
• Shippable Places:Você pode acessar a web de dentro de seus places. Um place é uma montagem visual de componentes relacionados. Um shippable place é um container móvel de componentes.
Links interessantes
• http://www.omg.org• http:/www.cetus-links.org
top related