SlideShare uma empresa Scribd logo
1 de 6
Sistemas distribuídos baseados em objetos



                                  Adilmar Coelho Dantas1; Diogo Andrade²;
1,2
    Instituto Federal de Educação Ciência e Tecnologia do Triângulo Mineiro – IFTM –Uberlândia– Brasil
                  ¹adilmarcoelho@hotmail.com, ²diogo.andradesilva@gmail.com


Resumo
        A tecnologia Web pode ser utilizada para prover portabilidade para a aplicação. Existe,
com efeito, um novo paradigma em computação, cujo foco é a interoperabilidade de objetos
(Wallnau, 1998), entendendo-se por interoperabilidade a possibilidade de um programa, em um
sistema, acessar programas e dados em outros sistemas (Bernstein, 1996). A tecnologia de
distribuição de sistemas baseados em objetos dá a oportunidade de distribuir e globalizar, de
forma transparente, uma aplicação.

Abstract
        A tecnologia Web pode ser utilizada para prover portabilidade para a aplicação. Existe,
com efeito, um novo paradigma em computação, cujo foco é a interoperabilidade de objetos
(Wallnau, 1998), entendendo-se por interoperabilidade a possibilidade de um programa, em um
sistema, acessar programas e dados em outros sistemas (Bernstein, 1996). A tecnologia de
distribuição de sistemas baseados em objetos dá a oportunidade de distribuir e globalizar, de
forma transparente, uma aplicação.

Palavras-chave: Sistemas Distribuídos, Tecnologia web, objetos computacionais distribuídos.

1. Introdução


       Sistemas Distribuídos em objetos podem ser entendidos como a agregação de três
tecnologias sinergicamente acopladas, a saber: Tecnologia de Objetos, Tecnologia de Distribuição e
Tecnologia Web. A combinação do uso destas tecnologias mudou, de maneira fundamental, a forma
como esses sistemas são construídos. Objetos são adicionados nas redes e representam unidades de
distribuição, movimento e comunicação.
       Nos sistemas distribuídos baseados em objetos tudo é tratado como objeto até mesmo os
serviços e recursos são objetos que serão invocados quando necessário.
2. Vantagens


   •   Facilita de forma eficiente a transparência e oculta os aspectos da distribuição.



   •   Facilidade na migração da implementação de um objeto de uma plataforma a outra. Isto é
       possível, pois os objetos, mesmo remotos, podem parecer como sendo locais aos seus
       clientes. O cliente não sabe onde e em que tipo de máquina realmente reside a
       implementação de um objeto utilizado por ele.



   •   Recursos de hardware e software disponíveis em plataformas heterogêneas podem ser
       utilizados por uma aplicação. Tem-se a imagem de um sistema único que, na realidade, é
       formado por uma aplicação construída por objetos distribuídos.

3. Desvantagens


       De forma geral, a distribuição de objetos permite um avanço que objetiva tornar a
informação distribuída mais eficiente, mais flexível e menos complexa. Entretanto, deve-se ressaltar
algumas dificuldades para construir aplicações distribuídas orientadas a objetos, por exemplo,
(Eastman, 1997).
Dentre elas temos:
   •   Como estas aplicações devem ser implementadas;

   •   Como esses sistemas irão se comunicar;

   •   Como manter estas informações em um estado consistente;

   •   Como manter a segurança.



4. Desempenho
O custo da invocação de um objeto distribuído, isto é, de um pedido de execução de um dos
seus métodos, é medido em milissegundos, assim, para um objeto distribuído, não se pode ignorar




o custo da invocação de métodos na determinação do desempenho, devendo esse custo ser
cuidadosamente considerado na análise do desempenho geral de um sistema.


5. Complexidade
      Sistemas distribuídos baseados em objeto são usualmente complexos, mas essa
complexidade é invisível ao cliente.

6. Localização e conconrrência
         Localização: Objetos distribuídos geralmente não estão localizados no mesmo espaço de
endereçamento dos seus clientes.
         Concorrência: Objetos distribuídos são utilizados por um grande número de clientes,
necessitando, com isto, um gerenciamento muito complexo de problemas de concorrência.


7. Caracteristicas
   Um sistema distribuído orientado a objeto permite que os objetos sejam instanciados num
ambiente distribuído (Andleigh, Gretzinger, 1992; Manola, 1999; Taylor, 1993). Esses sistemas,
assim como qualquer sistema distribuído, possuem as seguintes características (Chin, Chanson,
1991):


   •     Distribuição: O sistema executa numa rede de computadores independentes heterogêneos.



   •     Transparência: O sistema esconde o ambiente distribuído e outros detalhes desnecessários
         ao usuário. Por exemplo, um sistema pode prover a característica de transparência de
         localização e, com isso, o usuário não precisa se preocupar com a localização física de um
         objeto para fazer uma invocação.
•   Tolerância a falhas: A falha de um computador, ou de um objeto, representa apenas uma
       falha parcial do sistema; sendo a perda restrita ao computador ou ao objeto. O restante do
       sistema continua processando.




   •   Disponibilidade: O sistema assegura a disponibilidade dos objetos, independente de falhas
       nos computadores.


   •   Autonomia dos objetos: O sistema permite ao criador do objeto especificar os clientes
       autorizados a operar sobre ele. Criando assim mecanismos de proteção para os objetos.


   •   Concorrência no processamento: O sistema permite que objetos de um programa possam ser
       atribuídos   a   múltiplos   processadores,   para   que   eles   possam   ser   executados
       concorrentemente.


   •   Concorrência nos objetos: Um objeto pode atender a múltiplas invocações de clientes
       concorrentemente.


8. Gerenciamento



   Os objetos são os recursos fundamentais de qualquer sistema orientado a objeto; portanto, o
gerenciamento de objetos é uma função essencial destes sistemas. Assim como em qualquer sistema
distribuído, os mecanismos de gerenciamento de objetos envolvem:
   •   Gerenciamento de transações: Tem a função de gerenciar transações, onde uma transação é
       uma coleção de operações que executa uma única função lógica numa aplicação.



   •   Serialização: Transações concorrentes são escalonadas de forma a serem executadas
       sequencialmente em alguma ordem.
•   Atomicidade: Uma transação é completada de forma total ou é abortada.


   •   Sincronização: Tem a função de garantir que atividades de múltiplas transações, invocando
       o mesmo objeto, não conflitem ou interfiram entre si.


   •   Segurança de acesso: Tem a função de atribuir diferentes níveis de segurança aos usuários
       para operar sobre diferentes conjuntos de objetos.




   •   Balanceamento de carga: O principal objetivo do balanceamento de carga é maximizar a
       taxa de resposta do sistema.



9. Conclusão

       Este trabalho possibilitou aumentar os conhecimentos a respeito dos aspectos e
caracteristicas dos sistemas distribuidos em geral, além disso, como manipular e compartilhar
objetos presentes nestes sistemas distribuidos. Conhecendo bem as caracteristicas desses sistemas e
suas particularidades torna possivel a implementação e o gerenciamento deste tipo de aplicação.
Provando asssim que estas ferramentas quando usadas em conjunto sobre total controle podem ser
excelentes para a solução de problemas no processamento de informações.


9. Bibliografia

[1] <http://pt.scribd.com/doc/41974803/Sistemas-Distribuidos-Baseados-em-Objetos> Acessado em
08 de Nov 2011.

[2] <http://pt.wikipedia.org/wiki/Computa%C3%A7%C3%A3o_distribu%C3%ADda> Acessado
em 09 de Nov de 2011.

[3]< http://www.tlc-networks.polito.it/anapaula/Aula_Cap02.pdf> Acessado em 10 de Nov de 2011.
Artigo Sistemas Distribuidos

Mais conteúdo relacionado

Semelhante a Artigo Sistemas Distribuidos

Sistemas operacionais
Sistemas operacionaisSistemas operacionais
Sistemas operacionais
DuFelix02
 
Uma Arquitetura para a Utilização de Computação nas Nuvens nos Ambientes de C...
Uma Arquitetura para a Utilização de Computação nas Nuvens nos Ambientes de C...Uma Arquitetura para a Utilização de Computação nas Nuvens nos Ambientes de C...
Uma Arquitetura para a Utilização de Computação nas Nuvens nos Ambientes de C...
Henrique Gabriel Gularte Pereira
 
Caracterizacao de sistemas distribuidos
Caracterizacao de sistemas distribuidosCaracterizacao de sistemas distribuidos
Caracterizacao de sistemas distribuidos
Portal_do_Estudante_SD
 
Sistemas operacionais sistemas-distribuidos
Sistemas operacionais sistemas-distribuidosSistemas operacionais sistemas-distribuidos
Sistemas operacionais sistemas-distribuidos
robsons75
 
Relatório geral pi
Relatório geral piRelatório geral pi
Relatório geral pi
redesinforma
 

Semelhante a Artigo Sistemas Distribuidos (20)

escalonamento de processos
escalonamento de processosescalonamento de processos
escalonamento de processos
 
desafios na implementacao de sistemas distribuidos
desafios na implementacao de sistemas distribuidosdesafios na implementacao de sistemas distribuidos
desafios na implementacao de sistemas distribuidos
 
Sistemas operacionais
Sistemas operacionaisSistemas operacionais
Sistemas operacionais
 
Distributed Systems - Exercises
Distributed Systems - ExercisesDistributed Systems - Exercises
Distributed Systems - Exercises
 
Uma Arquitetura para a Utilização de Computação nas Nuvens nos Ambientes de C...
Uma Arquitetura para a Utilização de Computação nas Nuvens nos Ambientes de C...Uma Arquitetura para a Utilização de Computação nas Nuvens nos Ambientes de C...
Uma Arquitetura para a Utilização de Computação nas Nuvens nos Ambientes de C...
 
Sistemas distribuídos aula 1
Sistemas distribuídos aula 1Sistemas distribuídos aula 1
Sistemas distribuídos aula 1
 
Introducao.2s
Introducao.2sIntroducao.2s
Introducao.2s
 
Computação de alta performance
Computação de alta performanceComputação de alta performance
Computação de alta performance
 
Sistemas operativos distribuidos
Sistemas operativos distribuidosSistemas operativos distribuidos
Sistemas operativos distribuidos
 
Sistemas operacionais
Sistemas operacionaisSistemas operacionais
Sistemas operacionais
 
Caracterizacao de sistemas distribuidos
Caracterizacao de sistemas distribuidosCaracterizacao de sistemas distribuidos
Caracterizacao de sistemas distribuidos
 
Sistemas operacionais sistemas-distribuidos
Sistemas operacionais sistemas-distribuidosSistemas operacionais sistemas-distribuidos
Sistemas operacionais sistemas-distribuidos
 
Modular Monoliths - Como é possível organizar sua aplicação para habilitar um...
Modular Monoliths - Como é possível organizar sua aplicação para habilitar um...Modular Monoliths - Como é possível organizar sua aplicação para habilitar um...
Modular Monoliths - Como é possível organizar sua aplicação para habilitar um...
 
TDC2018SP | Trilha Microservices - Modular Monoliths - Como e possivel organi...
TDC2018SP | Trilha Microservices - Modular Monoliths - Como e possivel organi...TDC2018SP | Trilha Microservices - Modular Monoliths - Como e possivel organi...
TDC2018SP | Trilha Microservices - Modular Monoliths - Como e possivel organi...
 
Relatório geral pi
Relatório geral piRelatório geral pi
Relatório geral pi
 
Sld 4
Sld 4Sld 4
Sld 4
 
Artigo Cloud Computing
Artigo Cloud ComputingArtigo Cloud Computing
Artigo Cloud Computing
 
Aula Introdução a Sistemas Distribuídos.pdf
Aula Introdução a Sistemas Distribuídos.pdfAula Introdução a Sistemas Distribuídos.pdf
Aula Introdução a Sistemas Distribuídos.pdf
 
342336684-GSI030-Aula08-projetoImplementacao.pdf
342336684-GSI030-Aula08-projetoImplementacao.pdf342336684-GSI030-Aula08-projetoImplementacao.pdf
342336684-GSI030-Aula08-projetoImplementacao.pdf
 
Aula sd 2008_02aspectosprojectosds
Aula sd 2008_02aspectosprojectosdsAula sd 2008_02aspectosprojectosds
Aula sd 2008_02aspectosprojectosds
 

Mais de Adilmar Dantas

Mais de Adilmar Dantas (20)

Querying nosql stores
Querying nosql storesQuerying nosql stores
Querying nosql stores
 
APLICATIVO MÓVEL PARA AFERIÇÃO DA FREQUÊNCIA CARDÍACA E ACOMPANHAMENTO MÉDICO...
APLICATIVO MÓVEL PARA AFERIÇÃO DA FREQUÊNCIA CARDÍACA E ACOMPANHAMENTO MÉDICO...APLICATIVO MÓVEL PARA AFERIÇÃO DA FREQUÊNCIA CARDÍACA E ACOMPANHAMENTO MÉDICO...
APLICATIVO MÓVEL PARA AFERIÇÃO DA FREQUÊNCIA CARDÍACA E ACOMPANHAMENTO MÉDICO...
 
Programação Android Phonegap 1
Programação Android Phonegap 1Programação Android Phonegap 1
Programação Android Phonegap 1
 
Potenciação Divide and Conquer
Potenciação Divide and ConquerPotenciação Divide and Conquer
Potenciação Divide and Conquer
 
Cinta de expansão torácica utilizando Arduino aplicado na fisioterapia respir...
Cinta de expansão torácica utilizando Arduino aplicado na fisioterapia respir...Cinta de expansão torácica utilizando Arduino aplicado na fisioterapia respir...
Cinta de expansão torácica utilizando Arduino aplicado na fisioterapia respir...
 
Análise de Técnicas Computacionais para Classificação de Emoções
Análise de Técnicas Computacionais para Classificação de EmoçõesAnálise de Técnicas Computacionais para Classificação de Emoções
Análise de Técnicas Computacionais para Classificação de Emoções
 
Reconhecimento Automático de Emoções
Reconhecimento Automático de EmoçõesReconhecimento Automático de Emoções
Reconhecimento Automático de Emoções
 
Reconhecimento automático de emoções
Reconhecimento automático de emoçõesReconhecimento automático de emoções
Reconhecimento automático de emoções
 
Detecção de Faces - Redes Neurais *MLP
Detecção de Faces - Redes Neurais *MLPDetecção de Faces - Redes Neurais *MLP
Detecção de Faces - Redes Neurais *MLP
 
Rede Neural MLP para reconhecimento de Faces
Rede Neural MLP para reconhecimento de FacesRede Neural MLP para reconhecimento de Faces
Rede Neural MLP para reconhecimento de Faces
 
ALgoritmo Genético - Escalonamento
ALgoritmo Genético - EscalonamentoALgoritmo Genético - Escalonamento
ALgoritmo Genético - Escalonamento
 
BIODATA: SOFTWARE WEB PARA GERENCIAMENTO DE COLETA DE DADOS BIOMÉDICOS
BIODATA: SOFTWARE WEB PARA GERENCIAMENTO DE COLETA DE DADOS BIOMÉDICOSBIODATA: SOFTWARE WEB PARA GERENCIAMENTO DE COLETA DE DADOS BIOMÉDICOS
BIODATA: SOFTWARE WEB PARA GERENCIAMENTO DE COLETA DE DADOS BIOMÉDICOS
 
Alinhamento de Sequencia DNA
Alinhamento de Sequencia DNAAlinhamento de Sequencia DNA
Alinhamento de Sequencia DNA
 
3ª maratona de games – facom ufu
3ª maratona de games – facom  ufu3ª maratona de games – facom  ufu
3ª maratona de games – facom ufu
 
Monitor Cardíaco usando Arduino
Monitor Cardíaco usando Arduino Monitor Cardíaco usando Arduino
Monitor Cardíaco usando Arduino
 
Algoritmo clique maximo - Analise de Algoritmos
Algoritmo clique maximo  - Analise de AlgoritmosAlgoritmo clique maximo  - Analise de Algoritmos
Algoritmo clique maximo - Analise de Algoritmos
 
Servidores Web
Servidores WebServidores Web
Servidores Web
 
TCC: WebLab Laboratório de Experimentação Remota
TCC: WebLab Laboratório de Experimentação RemotaTCC: WebLab Laboratório de Experimentação Remota
TCC: WebLab Laboratório de Experimentação Remota
 
Weblab TCC
Weblab TCCWeblab TCC
Weblab TCC
 
Engenharia de software testes
Engenharia de software  testesEngenharia de software  testes
Engenharia de software testes
 

Artigo Sistemas Distribuidos

  • 1. Sistemas distribuídos baseados em objetos Adilmar Coelho Dantas1; Diogo Andrade²; 1,2 Instituto Federal de Educação Ciência e Tecnologia do Triângulo Mineiro – IFTM –Uberlândia– Brasil ¹adilmarcoelho@hotmail.com, ²diogo.andradesilva@gmail.com Resumo A tecnologia Web pode ser utilizada para prover portabilidade para a aplicação. Existe, com efeito, um novo paradigma em computação, cujo foco é a interoperabilidade de objetos (Wallnau, 1998), entendendo-se por interoperabilidade a possibilidade de um programa, em um sistema, acessar programas e dados em outros sistemas (Bernstein, 1996). A tecnologia de distribuição de sistemas baseados em objetos dá a oportunidade de distribuir e globalizar, de forma transparente, uma aplicação. Abstract A tecnologia Web pode ser utilizada para prover portabilidade para a aplicação. Existe, com efeito, um novo paradigma em computação, cujo foco é a interoperabilidade de objetos (Wallnau, 1998), entendendo-se por interoperabilidade a possibilidade de um programa, em um sistema, acessar programas e dados em outros sistemas (Bernstein, 1996). A tecnologia de distribuição de sistemas baseados em objetos dá a oportunidade de distribuir e globalizar, de forma transparente, uma aplicação. Palavras-chave: Sistemas Distribuídos, Tecnologia web, objetos computacionais distribuídos. 1. Introdução Sistemas Distribuídos em objetos podem ser entendidos como a agregação de três tecnologias sinergicamente acopladas, a saber: Tecnologia de Objetos, Tecnologia de Distribuição e Tecnologia Web. A combinação do uso destas tecnologias mudou, de maneira fundamental, a forma como esses sistemas são construídos. Objetos são adicionados nas redes e representam unidades de distribuição, movimento e comunicação. Nos sistemas distribuídos baseados em objetos tudo é tratado como objeto até mesmo os serviços e recursos são objetos que serão invocados quando necessário.
  • 2. 2. Vantagens • Facilita de forma eficiente a transparência e oculta os aspectos da distribuição. • Facilidade na migração da implementação de um objeto de uma plataforma a outra. Isto é possível, pois os objetos, mesmo remotos, podem parecer como sendo locais aos seus clientes. O cliente não sabe onde e em que tipo de máquina realmente reside a implementação de um objeto utilizado por ele. • Recursos de hardware e software disponíveis em plataformas heterogêneas podem ser utilizados por uma aplicação. Tem-se a imagem de um sistema único que, na realidade, é formado por uma aplicação construída por objetos distribuídos. 3. Desvantagens De forma geral, a distribuição de objetos permite um avanço que objetiva tornar a informação distribuída mais eficiente, mais flexível e menos complexa. Entretanto, deve-se ressaltar algumas dificuldades para construir aplicações distribuídas orientadas a objetos, por exemplo, (Eastman, 1997). Dentre elas temos: • Como estas aplicações devem ser implementadas; • Como esses sistemas irão se comunicar; • Como manter estas informações em um estado consistente; • Como manter a segurança. 4. Desempenho
  • 3. O custo da invocação de um objeto distribuído, isto é, de um pedido de execução de um dos seus métodos, é medido em milissegundos, assim, para um objeto distribuído, não se pode ignorar o custo da invocação de métodos na determinação do desempenho, devendo esse custo ser cuidadosamente considerado na análise do desempenho geral de um sistema. 5. Complexidade Sistemas distribuídos baseados em objeto são usualmente complexos, mas essa complexidade é invisível ao cliente. 6. Localização e conconrrência Localização: Objetos distribuídos geralmente não estão localizados no mesmo espaço de endereçamento dos seus clientes. Concorrência: Objetos distribuídos são utilizados por um grande número de clientes, necessitando, com isto, um gerenciamento muito complexo de problemas de concorrência. 7. Caracteristicas Um sistema distribuído orientado a objeto permite que os objetos sejam instanciados num ambiente distribuído (Andleigh, Gretzinger, 1992; Manola, 1999; Taylor, 1993). Esses sistemas, assim como qualquer sistema distribuído, possuem as seguintes características (Chin, Chanson, 1991): • Distribuição: O sistema executa numa rede de computadores independentes heterogêneos. • Transparência: O sistema esconde o ambiente distribuído e outros detalhes desnecessários ao usuário. Por exemplo, um sistema pode prover a característica de transparência de localização e, com isso, o usuário não precisa se preocupar com a localização física de um objeto para fazer uma invocação.
  • 4. Tolerância a falhas: A falha de um computador, ou de um objeto, representa apenas uma falha parcial do sistema; sendo a perda restrita ao computador ou ao objeto. O restante do sistema continua processando. • Disponibilidade: O sistema assegura a disponibilidade dos objetos, independente de falhas nos computadores. • Autonomia dos objetos: O sistema permite ao criador do objeto especificar os clientes autorizados a operar sobre ele. Criando assim mecanismos de proteção para os objetos. • Concorrência no processamento: O sistema permite que objetos de um programa possam ser atribuídos a múltiplos processadores, para que eles possam ser executados concorrentemente. • Concorrência nos objetos: Um objeto pode atender a múltiplas invocações de clientes concorrentemente. 8. Gerenciamento Os objetos são os recursos fundamentais de qualquer sistema orientado a objeto; portanto, o gerenciamento de objetos é uma função essencial destes sistemas. Assim como em qualquer sistema distribuído, os mecanismos de gerenciamento de objetos envolvem: • Gerenciamento de transações: Tem a função de gerenciar transações, onde uma transação é uma coleção de operações que executa uma única função lógica numa aplicação. • Serialização: Transações concorrentes são escalonadas de forma a serem executadas sequencialmente em alguma ordem.
  • 5. Atomicidade: Uma transação é completada de forma total ou é abortada. • Sincronização: Tem a função de garantir que atividades de múltiplas transações, invocando o mesmo objeto, não conflitem ou interfiram entre si. • Segurança de acesso: Tem a função de atribuir diferentes níveis de segurança aos usuários para operar sobre diferentes conjuntos de objetos. • Balanceamento de carga: O principal objetivo do balanceamento de carga é maximizar a taxa de resposta do sistema. 9. Conclusão Este trabalho possibilitou aumentar os conhecimentos a respeito dos aspectos e caracteristicas dos sistemas distribuidos em geral, além disso, como manipular e compartilhar objetos presentes nestes sistemas distribuidos. Conhecendo bem as caracteristicas desses sistemas e suas particularidades torna possivel a implementação e o gerenciamento deste tipo de aplicação. Provando asssim que estas ferramentas quando usadas em conjunto sobre total controle podem ser excelentes para a solução de problemas no processamento de informações. 9. Bibliografia [1] <http://pt.scribd.com/doc/41974803/Sistemas-Distribuidos-Baseados-em-Objetos> Acessado em 08 de Nov 2011. [2] <http://pt.wikipedia.org/wiki/Computa%C3%A7%C3%A3o_distribu%C3%ADda> Acessado em 09 de Nov de 2011. [3]< http://www.tlc-networks.polito.it/anapaula/Aula_Cap02.pdf> Acessado em 10 de Nov de 2011.