SlideShare uma empresa Scribd logo
SMD0050 - SISTEMAS
              DISTRIBUÍDOS




Prof. Dr. Windson Viana de Carvalho
Créditos : 64h
Prática e Teórica




                                      1
Livro Adotado


Coulouris, Dollimore, Kindberg and Blair
Distributed Systems:
          Concepts and Design
Edition 5, © Addison-Wesley 2012
Sistemas Distribuídos?
  -Sistemas compostos por hardware e software
localizados em lugares físicos distintos que se
comunicam através de mensagens enviadas via uma
rede de computadores
  -Concorrência entre processos
    -Processos executam em paralelo
 -Não existe relógio global
    -Coordenação por mensagens
 -Falhas independentes
    -Tratamento de exceções, design pensando em falhas
                                                 3
Exemplo de
Sistema Distribuído com múltiplos dispositivos
Domínios de Aplicação e suas tecnologias de SD
Finance and commerce       eCommerce e.g. Amazon and eBay, PayPal,
                           online banking and trading
The information society    Web information and search engines, ebooks,
                           Wikipedia; social networking: Facebook and MySpace.
Creative industries and    online gaming, music and film in the home, user-
entertainment              generated content, e.g. YouTube, Flickr
Healthcare                 health informatics, on online patient records,
                           monitoring patients
Education                  e-learning, virtual learning environments;
                           distance learning
Transport and logistics    GPS in route finding systems, map services:
                           Google Maps, Google Earth
Science                    The Grid as an enabling technology for
                           collaboration between scientists
Environmental management   sensor technology to monitor earthquakes,
                           floods or tsunamis
                                                                        5
Ementa
I. Introdução a Sistemas Distribuídos
  I.   Capítulos 1 e 2
II. Comunicação Interprocessos
  I.   Capítulo 4
III. Processos e Threads
  I. Parte do Capítulo 6
  II. Atividades Práticas com programação em sockets
IV. Objetos Distribuídos
  I.   Capítulo 5 e material adicional de OSGi

                                                  6
Ementa
V. Sistemas P2P
  I.   Capítulo 10 e Capítulo 2 do Kurose (Redes)
V. Coordenação
  I.   Capítulo 12
V. Distributed Shared Memory
  I. Capítulo 18 (Espaço de tuplas)
  II. Atividades Práticas
V. Web Services e Cloud Computing
  I. Capítulo 19 e material professor Fernando Trinta
  II. Trabalho de Implementação
                                                    7
Avaliações
• Duas provas
• Atividades práticas em laboratório
• Trabalho de Implementação


• Média Final: (2*MP + Trabalho +
  MPráticas) /4




                                       8
A WEB
• Aplicações e protocolos executando na Web são o
típicos exemplos de SD
   • HTTP, DNS, SMTP, Browser
• Qual o grande objetivo?
   • Compartilhamento de recursos
• Modelo arquitetural cliente-servidor
   • Cliente : invoca uma operação no servidor remoto
   • Servidor: responde a invocação com um recurso ou
   resultado de um método
   • Múltiplos clientes!
                                                   9
Quão grande é o número de servidores?



  Date          Computers     Web servers     Percentage

1993, July        1,776,000            130         0.008
1995, July        6,642,000          23,500          0.4
1997, July       19,540,000       1,203,096            6
1999, July       56,218,000       6,598,697           12
2001, July      125,888,197      31,299,592           25
2003, July     ~200,000,000      42,298,371          21
2005, July      353,284,187      67,571,581          19


                 + de 600 milhões em 2012
Desafios de SD

I. Heterogeneidade
II. Abertura (openess)
III. Segurança
IV. Escalabilidade
V. Tratamento e Recuperação de Falhas
VI. Concorrência
VII. Transparência



                                        14
Heterogeneidade

• Múltiplos dispositivos, plataformas, modelos de
  codificação dos dados, tipos de navegadores,
  condições de acesso
• Soluções
  • Máquinas Virtuais
  • Standards
  • Middlewares
  • Mecanismos de Adaptação




                                                    15
Middleware
• Middleware mascara heterogeneidade de sistemas
  distribuídos
  •   Java VM: SO
  •   CORBA: Linguagem
  •   OSGi
• Trata de concorrência, portabilidade,
  interoperabilidade
  •   API única, protocolo comum, conjunto de serviços
• Middlewares tradicionais facilitam a vida do
  desenvolvedor pela abstração de transparência.
Modelos de Middleware Tradicionais
•   Middleware orientados a transação
•   Middleware com memória compartilhada
•   Middleware orientados a mensagem
•   Middleware orientados a RPC
•   Middleware orientados a Objetos
•   Middleware Adaptativo
•   Middleware Multimídia
Memória Compartilhada



       <“olá!”, 4, 3.15>




  Memória Compartilhada



                           Middleware
Orientado a Mensagem

        “olá!”




        Fila



                       Middleware
RPC/Objetos

   “olá!”




              Middleware
Abertura ou Sistemas Abertos

• Sistemas capazes de serem acessados, integrados
  e modificados facilmente por terceiros
     Não dependem de um único vendedor ou
  proprietário para serem utilizados
• Exige o uso de Padrões (Standards) abertos
  • HTTP, XML, WSDL, HTML, SOAP
  • WIFI, Bluetooth, DLNA, UPNP
  • OSGi


     https://api.twitter.com/1.1/statuses/mentions_timeline.jso
     n?count=2&since_id=14927799
                                                                  21
Escalabilidade

• Suportar aumento de carga e de clientes
  conectados
     Sem perda de performance
     Sem aumento de custos desnecessários
     Evitando gargalos (bottlenecks)
• Uso de elasticidade, virtualização e replicação
• Modelos arquiteturais descentralizados ou menos
  dependentes de um único ponto (gargalo)



                                                22
Tratamento de Falhas

•   Detecção de Faltas ou Falhas
•   Mascarar Falhas
•   Tolerar Falhas
•   Recuperação em caso de falhas
•   Soluções
•   Redundância
•   Controle de Transações



                                    23
Transparência
Access transparency: enables local and remote resources to be accessed using identical
  operations.
Location transparency: enables resources to be accessed without knowledge of their physical
  or network location (for example, which building or IP address).
Concurrency transparency: enables several processes to operate concurrently using shared
   resources without interference between them.
Replication transparency: enables multiple instances of resources to be used to increase
  reliability and performance without knowledge of the replicas by users or application
  programmers.
Failure transparency: enables the concealment of faults, allowing users and application
  programs to complete their tasks despite the failure of hardware or software components.
Mobility transparency: allows the movement of resources and clients within a system
   without affecting the operation of users or programs.
Performance transparency: allows the system to be reconfigured to improve performance
   as loads vary.
Scaling transparency: allows the system and applications to expand in scale without change
  to the system structure or the application algorithms.
Como ficam esses conceitos na Web?

             Web servers                                                                                                   Browsers

                                                                              http://www.google.comlsearch?q=obama
       www.google.com




      www.cdk5.net                                                         Internet
                                                                                                                             http://www.cdk5.net/

          www.w3c.org

File system of                                                          http://www.w3.org/standards/faq.html#conformance
www.w3c.org          standards

             faq.html



                        Instructor’s Guide for Coulouris, Dollimore, Kindberg and Blair, Distributed Systems: Concepts and Design Edn. 5
                                                                     © Pearson Education 2012
Exercícios

1.4

1.14




                    26

Mais conteúdo relacionado

Mais procurados

SI - Sistemas Distribuídos - Apresentação da disciplina
SI - Sistemas Distribuídos - Apresentação da disciplinaSI - Sistemas Distribuídos - Apresentação da disciplina
SI - Sistemas Distribuídos - Apresentação da disciplina
Frederico Madeira
 
SI - Comunicação
SI - ComunicaçãoSI - Comunicação
SI - Comunicação
Frederico Madeira
 
Introcucao aos Sistemas Distribuidos
Introcucao aos Sistemas DistribuidosIntrocucao aos Sistemas Distribuidos
Introcucao aos Sistemas Distribuidos
Valberto Carneiro
 
Sistemas distribuídos aula 1
Sistemas distribuídos aula 1Sistemas distribuídos aula 1
Sistemas distribuídos aula 1
Renato William
 
WebServices
WebServicesWebServices
WebServices
Frederico Madeira
 
Sistemas distribuídos e de tempo real
Sistemas distribuídos e de tempo realSistemas distribuídos e de tempo real
Sistemas distribuídos e de tempo real
Rogério Cardoso
 
Sistemas operacionais sistemas-distribuidos
Sistemas operacionais sistemas-distribuidosSistemas operacionais sistemas-distribuidos
Sistemas operacionais sistemas-distribuidosrobsons75
 
desafios na implementacao de sistemas distribuidos
desafios na implementacao de sistemas distribuidosdesafios na implementacao de sistemas distribuidos
desafios na implementacao de sistemas distribuidos
Hélio Jovo
 
Aula 2 introdução a sistemas distribuídos
Aula 2   introdução a sistemas distribuídosAula 2   introdução a sistemas distribuídos
Aula 2 introdução a sistemas distribuídos
Eduardo de Lucena Falcão
 
Introdução aos sistemas distribuidos
Introdução aos sistemas distribuidosIntrodução aos sistemas distribuidos
Introdução aos sistemas distribuidosJesse Teixeira
 
Sistemas Distribuídos - Aspectos de Projeto
Sistemas Distribuídos - Aspectos de ProjetoSistemas Distribuídos - Aspectos de Projeto
Sistemas Distribuídos - Aspectos de ProjetoAdriano Teixeira de Souza
 
P2P - Sistemas Distribuídos
P2P - Sistemas DistribuídosP2P - Sistemas Distribuídos
P2P - Sistemas Distribuídos
Gustavo Monteiro
 
Sistemas Distribuídos - Comunicação Distribuída – Middleware
Sistemas Distribuídos - Comunicação Distribuída – MiddlewareSistemas Distribuídos - Comunicação Distribuída – Middleware
Sistemas Distribuídos - Comunicação Distribuída – MiddlewareAdriano Teixeira de Souza
 
SI - Processos, Threads, Virtualização e Migração de Código
SI - Processos, Threads, Virtualização e Migração de CódigoSI - Processos, Threads, Virtualização e Migração de Código
SI - Processos, Threads, Virtualização e Migração de Código
Frederico Madeira
 
Sistemas Distribuídos - Aula 01
Sistemas Distribuídos - Aula 01Sistemas Distribuídos - Aula 01
Sistemas Distribuídos - Aula 01
Arthur Emanuel
 
Introdução a Sistemas Distribuídos
Introdução a Sistemas DistribuídosIntrodução a Sistemas Distribuídos
Introdução a Sistemas Distribuídos
Victor Hazin da Rocha
 
Arquitetura peer to-peer (p2p)
Arquitetura peer to-peer (p2p)Arquitetura peer to-peer (p2p)
Arquitetura peer to-peer (p2p)
Nilton Rodrigues Pereira
 
Aula04 Sistemas Distribuídos - Processos
Aula04 Sistemas Distribuídos - ProcessosAula04 Sistemas Distribuídos - Processos
Aula04 Sistemas Distribuídos - Processos
Messias Batista
 

Mais procurados (20)

SI - Sistemas Distribuídos - Apresentação da disciplina
SI - Sistemas Distribuídos - Apresentação da disciplinaSI - Sistemas Distribuídos - Apresentação da disciplina
SI - Sistemas Distribuídos - Apresentação da disciplina
 
SI - Comunicação
SI - ComunicaçãoSI - Comunicação
SI - Comunicação
 
Introcucao aos Sistemas Distribuidos
Introcucao aos Sistemas DistribuidosIntrocucao aos Sistemas Distribuidos
Introcucao aos Sistemas Distribuidos
 
Sistemas distribuídos aula 1
Sistemas distribuídos aula 1Sistemas distribuídos aula 1
Sistemas distribuídos aula 1
 
WebServices
WebServicesWebServices
WebServices
 
Sistemas distribuídos e de tempo real
Sistemas distribuídos e de tempo realSistemas distribuídos e de tempo real
Sistemas distribuídos e de tempo real
 
Sistemas operacionais sistemas-distribuidos
Sistemas operacionais sistemas-distribuidosSistemas operacionais sistemas-distribuidos
Sistemas operacionais sistemas-distribuidos
 
desafios na implementacao de sistemas distribuidos
desafios na implementacao de sistemas distribuidosdesafios na implementacao de sistemas distribuidos
desafios na implementacao de sistemas distribuidos
 
Aula 2 introdução a sistemas distribuídos
Aula 2   introdução a sistemas distribuídosAula 2   introdução a sistemas distribuídos
Aula 2 introdução a sistemas distribuídos
 
Introdução aos sistemas distribuidos
Introdução aos sistemas distribuidosIntrodução aos sistemas distribuidos
Introdução aos sistemas distribuidos
 
Sistemas Distribuídos - Aspectos de Projeto
Sistemas Distribuídos - Aspectos de ProjetoSistemas Distribuídos - Aspectos de Projeto
Sistemas Distribuídos - Aspectos de Projeto
 
Introdução à sistemas distribuídos
Introdução à sistemas distribuídosIntrodução à sistemas distribuídos
Introdução à sistemas distribuídos
 
P2P - Sistemas Distribuídos
P2P - Sistemas DistribuídosP2P - Sistemas Distribuídos
P2P - Sistemas Distribuídos
 
Sistemas Distribuídos - Comunicação Distribuída – Middleware
Sistemas Distribuídos - Comunicação Distribuída – MiddlewareSistemas Distribuídos - Comunicação Distribuída – Middleware
Sistemas Distribuídos - Comunicação Distribuída – Middleware
 
SI - Processos, Threads, Virtualização e Migração de Código
SI - Processos, Threads, Virtualização e Migração de CódigoSI - Processos, Threads, Virtualização e Migração de Código
SI - Processos, Threads, Virtualização e Migração de Código
 
Sistemas Distribuídos - Clusters
Sistemas Distribuídos - ClustersSistemas Distribuídos - Clusters
Sistemas Distribuídos - Clusters
 
Sistemas Distribuídos - Aula 01
Sistemas Distribuídos - Aula 01Sistemas Distribuídos - Aula 01
Sistemas Distribuídos - Aula 01
 
Introdução a Sistemas Distribuídos
Introdução a Sistemas DistribuídosIntrodução a Sistemas Distribuídos
Introdução a Sistemas Distribuídos
 
Arquitetura peer to-peer (p2p)
Arquitetura peer to-peer (p2p)Arquitetura peer to-peer (p2p)
Arquitetura peer to-peer (p2p)
 
Aula04 Sistemas Distribuídos - Processos
Aula04 Sistemas Distribuídos - ProcessosAula04 Sistemas Distribuídos - Processos
Aula04 Sistemas Distribuídos - Processos
 

Destaque

Prezentace twinspace
Prezentace twinspacePrezentace twinspace
Prezentace twinspacehanulka
 
Competencias docentes para el nuevo siglo diapositivas
Competencias docentes para el nuevo siglo diapositivasCompetencias docentes para el nuevo siglo diapositivas
Competencias docentes para el nuevo siglo diapositivaspatico2011
 
Sistemas operacionais e multimidia
Sistemas operacionais e multimidiaSistemas operacionais e multimidia
Sistemas operacionais e multimidiaWesley Rabêlo
 
Resumo de S.O.
Resumo de S.O.Resumo de S.O.
Resumo de S.O.dannas_06
 
2014 - Multimídia e Internet - 01 Introdução
2014 - Multimídia e Internet - 01 Introdução2014 - Multimídia e Internet - 01 Introdução
2014 - Multimídia e Internet - 01 IntroduçãoWillian Magalhães
 
Apostila Multimidia Aplicada a Educação
Apostila Multimidia Aplicada a EducaçãoApostila Multimidia Aplicada a Educação
Apostila Multimidia Aplicada a Educação
Daniel Brandão
 
Sistemas Distribuídos - Aula 00
Sistemas Distribuídos - Aula 00Sistemas Distribuídos - Aula 00
Sistemas Distribuídos - Aula 00
Arthur Emanuel
 
Sistemas Operacionais Multimidia Cap7 Tanenbaum
Sistemas Operacionais Multimidia   Cap7 TanenbaumSistemas Operacionais Multimidia   Cap7 Tanenbaum
Sistemas Operacionais Multimidia Cap7 Tanenbaum
andfelipe
 
Introdução à Multimídia
Introdução à Multimídia Introdução à Multimídia
Introdução à Multimídia
Windson Viana
 
Sistemas Distribuídos baseados na Web
Sistemas Distribuídos baseados na WebSistemas Distribuídos baseados na Web
Sistemas Distribuídos baseados na Web
Rafael Chagas
 

Destaque (10)

Prezentace twinspace
Prezentace twinspacePrezentace twinspace
Prezentace twinspace
 
Competencias docentes para el nuevo siglo diapositivas
Competencias docentes para el nuevo siglo diapositivasCompetencias docentes para el nuevo siglo diapositivas
Competencias docentes para el nuevo siglo diapositivas
 
Sistemas operacionais e multimidia
Sistemas operacionais e multimidiaSistemas operacionais e multimidia
Sistemas operacionais e multimidia
 
Resumo de S.O.
Resumo de S.O.Resumo de S.O.
Resumo de S.O.
 
2014 - Multimídia e Internet - 01 Introdução
2014 - Multimídia e Internet - 01 Introdução2014 - Multimídia e Internet - 01 Introdução
2014 - Multimídia e Internet - 01 Introdução
 
Apostila Multimidia Aplicada a Educação
Apostila Multimidia Aplicada a EducaçãoApostila Multimidia Aplicada a Educação
Apostila Multimidia Aplicada a Educação
 
Sistemas Distribuídos - Aula 00
Sistemas Distribuídos - Aula 00Sistemas Distribuídos - Aula 00
Sistemas Distribuídos - Aula 00
 
Sistemas Operacionais Multimidia Cap7 Tanenbaum
Sistemas Operacionais Multimidia   Cap7 TanenbaumSistemas Operacionais Multimidia   Cap7 Tanenbaum
Sistemas Operacionais Multimidia Cap7 Tanenbaum
 
Introdução à Multimídia
Introdução à Multimídia Introdução à Multimídia
Introdução à Multimídia
 
Sistemas Distribuídos baseados na Web
Sistemas Distribuídos baseados na WebSistemas Distribuídos baseados na Web
Sistemas Distribuídos baseados na Web
 

Semelhante a Capítulo1 - Introdução a Sistemas Distribuídos - Coulouris

Internet das coisas - A Revolução já começou
Internet das coisas - A Revolução já começouInternet das coisas - A Revolução já começou
Internet das coisas - A Revolução já começou
Jose Wilker
 
Integração de Aplicações
Integração de AplicaçõesIntegração de Aplicações
Integração de Aplicações
Michel Candido
 
Introdução a arquitetura de sistemas com .NET
Introdução a arquitetura de sistemas com .NETIntrodução a arquitetura de sistemas com .NET
Introdução a arquitetura de sistemas com .NET
Mário Meyrelles
 
A Revolução já começou
A Revolução já começouA Revolução já começou
A Revolução já começou
Jose Wilker
 
DataOps, Data Mesh e Data Fabric. Melhores práticas para seu projeto de arqui...
DataOps, Data Mesh e Data Fabric. Melhores práticas para seu projeto de arqui...DataOps, Data Mesh e Data Fabric. Melhores práticas para seu projeto de arqui...
DataOps, Data Mesh e Data Fabric. Melhores práticas para seu projeto de arqui...
Eduardo Hahn
 
Internet das coisas - A revolução já começou
Internet das coisas - A revolução já começouInternet das coisas - A revolução já começou
Internet das coisas - A revolução já começou
Jose Wilker
 
Cloud computing
Cloud computingCloud computing
Cloud computing
Edivaldo Júnior
 
Organizações virtuais
Organizações virtuaisOrganizações virtuais
Organizações virtuais
Guilherme Canteiro
 
TDC - Técnicas e recursos para desenvolvimento web em cenários de grande escala
TDC - Técnicas e recursos para desenvolvimento web em cenários de grande escalaTDC - Técnicas e recursos para desenvolvimento web em cenários de grande escala
TDC - Técnicas e recursos para desenvolvimento web em cenários de grande escalaCleber Dantas
 
Jukebox Webpanel
Jukebox WebpanelJukebox Webpanel
Jukebox Webpanel
guesta3ecbb
 
Jukebox Webpanel Datasul
Jukebox Webpanel DatasulJukebox Webpanel Datasul
Jukebox Webpanel Datasul
datasul20
 
Workshop: Drupal para Bioinformática
Workshop: Drupal para BioinformáticaWorkshop: Drupal para Bioinformática
Workshop: Drupal para Bioinformáticaintrofini
 
Como DDD e Strategic Design estão nos ajudando a modernizar um Legado
Como DDD e Strategic Design estão nos ajudando a modernizar um LegadoComo DDD e Strategic Design estão nos ajudando a modernizar um Legado
Como DDD e Strategic Design estão nos ajudando a modernizar um Legado
Luiz Costa
 
Introdução a Cloud Computing
Introdução a Cloud ComputingIntrodução a Cloud Computing
Introdução a Cloud Computing
Frederico Madeira
 
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...
Luiz Costa
 
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...
tdc-globalcode
 

Semelhante a Capítulo1 - Introdução a Sistemas Distribuídos - Coulouris (20)

Grids computacionais
Grids computacionaisGrids computacionais
Grids computacionais
 
Internet das coisas - A Revolução já começou
Internet das coisas - A Revolução já começouInternet das coisas - A Revolução já começou
Internet das coisas - A Revolução já começou
 
Sd capitulo01
Sd capitulo01Sd capitulo01
Sd capitulo01
 
Integração de Aplicações
Integração de AplicaçõesIntegração de Aplicações
Integração de Aplicações
 
Introdução a arquitetura de sistemas com .NET
Introdução a arquitetura de sistemas com .NETIntrodução a arquitetura de sistemas com .NET
Introdução a arquitetura de sistemas com .NET
 
A Revolução já começou
A Revolução já começouA Revolução já começou
A Revolução já começou
 
DataOps, Data Mesh e Data Fabric. Melhores práticas para seu projeto de arqui...
DataOps, Data Mesh e Data Fabric. Melhores práticas para seu projeto de arqui...DataOps, Data Mesh e Data Fabric. Melhores práticas para seu projeto de arqui...
DataOps, Data Mesh e Data Fabric. Melhores práticas para seu projeto de arqui...
 
Internet das coisas - A revolução já começou
Internet das coisas - A revolução já começouInternet das coisas - A revolução já começou
Internet das coisas - A revolução já começou
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
Organizações virtuais
Organizações virtuaisOrganizações virtuais
Organizações virtuais
 
TDC - Técnicas e recursos para desenvolvimento web em cenários de grande escala
TDC - Técnicas e recursos para desenvolvimento web em cenários de grande escalaTDC - Técnicas e recursos para desenvolvimento web em cenários de grande escala
TDC - Técnicas e recursos para desenvolvimento web em cenários de grande escala
 
Serviços e Redes inspiradas Biologicamente
Serviços e Redes inspiradas BiologicamenteServiços e Redes inspiradas Biologicamente
Serviços e Redes inspiradas Biologicamente
 
Jukebox Webpanel
Jukebox WebpanelJukebox Webpanel
Jukebox Webpanel
 
Jukebox Webpanel Datasul
Jukebox Webpanel DatasulJukebox Webpanel Datasul
Jukebox Webpanel Datasul
 
Workshop: Drupal para Bioinformática
Workshop: Drupal para BioinformáticaWorkshop: Drupal para Bioinformática
Workshop: Drupal para Bioinformática
 
Computação de alta performance
Computação de alta performanceComputação de alta performance
Computação de alta performance
 
Como DDD e Strategic Design estão nos ajudando a modernizar um Legado
Como DDD e Strategic Design estão nos ajudando a modernizar um LegadoComo DDD e Strategic Design estão nos ajudando a modernizar um Legado
Como DDD e Strategic Design estão nos ajudando a modernizar um Legado
 
Introdução a Cloud Computing
Introdução a Cloud ComputingIntrodução a Cloud Computing
Introdução a Cloud Computing
 
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...
 

Último

Sócrates e os sofistas - apresentação de slides
Sócrates e os sofistas - apresentação de slidesSócrates e os sofistas - apresentação de slides
Sócrates e os sofistas - apresentação de slides
jbellas2
 
CADERNO DE CONCEITOS E ORIENTAÇÕES DO CENSO ESCOLAR 2024.pdf
CADERNO DE CONCEITOS E ORIENTAÇÕES DO CENSO ESCOLAR 2024.pdfCADERNO DE CONCEITOS E ORIENTAÇÕES DO CENSO ESCOLAR 2024.pdf
CADERNO DE CONCEITOS E ORIENTAÇÕES DO CENSO ESCOLAR 2024.pdf
NatySousa3
 
Sinais de pontuação
Sinais de pontuaçãoSinais de pontuação
Sinais de pontuação
Mary Alvarenga
 
História Do Assaré - Prof. Francisco Leite
História Do Assaré - Prof. Francisco LeiteHistória Do Assaré - Prof. Francisco Leite
História Do Assaré - Prof. Francisco Leite
profesfrancleite
 
PowerPoint Newton gostava de Ler - Saber em Gel.pdf
PowerPoint Newton gostava de Ler - Saber em Gel.pdfPowerPoint Newton gostava de Ler - Saber em Gel.pdf
PowerPoint Newton gostava de Ler - Saber em Gel.pdf
1000a
 
BULLYING NÃO É AMOR.pdf LIVRO PARA TRABALHAR COM ALUNOS ATRAVÉS DE PROJETOS...
BULLYING NÃO É AMOR.pdf LIVRO PARA TRABALHAR COM ALUNOS ATRAVÉS DE PROJETOS...BULLYING NÃO É AMOR.pdf LIVRO PARA TRABALHAR COM ALUNOS ATRAVÉS DE PROJETOS...
BULLYING NÃO É AMOR.pdf LIVRO PARA TRABALHAR COM ALUNOS ATRAVÉS DE PROJETOS...
Escola Municipal Jesus Cristo
 
Slides Lição 9, Betel, Ordenança para uma vida de santificação, 2Tr24.pptx
Slides Lição 9, Betel, Ordenança para uma vida de santificação, 2Tr24.pptxSlides Lição 9, Betel, Ordenança para uma vida de santificação, 2Tr24.pptx
Slides Lição 9, Betel, Ordenança para uma vida de santificação, 2Tr24.pptx
LuizHenriquedeAlmeid6
 
Apresentação_Primeira_Guerra_Mundial 9 ANO-1.pptx
Apresentação_Primeira_Guerra_Mundial 9 ANO-1.pptxApresentação_Primeira_Guerra_Mundial 9 ANO-1.pptx
Apresentação_Primeira_Guerra_Mundial 9 ANO-1.pptx
JulianeMelo17
 
Projeto aLeR+ o Ambiente - Os animais são nossos amigos.pdf
Projeto aLeR+ o Ambiente - Os animais são nossos amigos.pdfProjeto aLeR+ o Ambiente - Os animais são nossos amigos.pdf
Projeto aLeR+ o Ambiente - Os animais são nossos amigos.pdf
Bibliotecas Infante D. Henrique
 
ptoposta curricular de geografia.da educação de jovens a e adultos
ptoposta curricular de geografia.da educação de jovens a e adultosptoposta curricular de geografia.da educação de jovens a e adultos
ptoposta curricular de geografia.da educação de jovens a e adultos
Escola Municipal Jesus Cristo
 
Sequência Didática - Cordel para Ensino Fundamental I
Sequência Didática - Cordel para Ensino Fundamental ISequência Didática - Cordel para Ensino Fundamental I
Sequência Didática - Cordel para Ensino Fundamental I
Letras Mágicas
 
APOSTILA JUIZ DE PAZ capelania cristã.pdf
APOSTILA JUIZ DE PAZ capelania cristã.pdfAPOSTILA JUIZ DE PAZ capelania cristã.pdf
APOSTILA JUIZ DE PAZ capelania cristã.pdf
CarlosEduardoSola
 
LIÇÃO 9 - ORDENANÇAS PARA UMA VIDA DE SANTIFICAÇÃO.pptx
LIÇÃO 9 - ORDENANÇAS PARA UMA VIDA DE SANTIFICAÇÃO.pptxLIÇÃO 9 - ORDENANÇAS PARA UMA VIDA DE SANTIFICAÇÃO.pptx
LIÇÃO 9 - ORDENANÇAS PARA UMA VIDA DE SANTIFICAÇÃO.pptx
WelidaFreitas1
 
Acróstico - Reciclar é preciso
Acróstico   -  Reciclar é preciso Acróstico   -  Reciclar é preciso
Acróstico - Reciclar é preciso
Mary Alvarenga
 
.Template .padrao .slides .TCC .2024 ppt
.Template .padrao .slides .TCC .2024 ppt.Template .padrao .slides .TCC .2024 ppt
.Template .padrao .slides .TCC .2024 ppt
IslanderAndrade
 
Caça-palavras ortografia M antes de P e B.
Caça-palavras    ortografia M antes de P e B.Caça-palavras    ortografia M antes de P e B.
Caça-palavras ortografia M antes de P e B.
Mary Alvarenga
 
Aula01 - ensino médio - (Filosofia).pptx
Aula01 - ensino médio - (Filosofia).pptxAula01 - ensino médio - (Filosofia).pptx
Aula01 - ensino médio - (Filosofia).pptx
kdn15710
 
repertório coringa para qualquer tema - Redação Enem
repertório coringa para qualquer tema - Redação Enemrepertório coringa para qualquer tema - Redação Enem
repertório coringa para qualquer tema - Redação Enem
palomasampaio878
 
APOSTILA DE TEXTOS CURTOS E INTERPRETAÇÃO.pdf
APOSTILA DE TEXTOS CURTOS E INTERPRETAÇÃO.pdfAPOSTILA DE TEXTOS CURTOS E INTERPRETAÇÃO.pdf
APOSTILA DE TEXTOS CURTOS E INTERPRETAÇÃO.pdf
RenanSilva991968
 
Unificação da Itália e a formação da Alemanha
Unificação da Itália e a formação da AlemanhaUnificação da Itália e a formação da Alemanha
Unificação da Itália e a formação da Alemanha
Acrópole - História & Educação
 

Último (20)

Sócrates e os sofistas - apresentação de slides
Sócrates e os sofistas - apresentação de slidesSócrates e os sofistas - apresentação de slides
Sócrates e os sofistas - apresentação de slides
 
CADERNO DE CONCEITOS E ORIENTAÇÕES DO CENSO ESCOLAR 2024.pdf
CADERNO DE CONCEITOS E ORIENTAÇÕES DO CENSO ESCOLAR 2024.pdfCADERNO DE CONCEITOS E ORIENTAÇÕES DO CENSO ESCOLAR 2024.pdf
CADERNO DE CONCEITOS E ORIENTAÇÕES DO CENSO ESCOLAR 2024.pdf
 
Sinais de pontuação
Sinais de pontuaçãoSinais de pontuação
Sinais de pontuação
 
História Do Assaré - Prof. Francisco Leite
História Do Assaré - Prof. Francisco LeiteHistória Do Assaré - Prof. Francisco Leite
História Do Assaré - Prof. Francisco Leite
 
PowerPoint Newton gostava de Ler - Saber em Gel.pdf
PowerPoint Newton gostava de Ler - Saber em Gel.pdfPowerPoint Newton gostava de Ler - Saber em Gel.pdf
PowerPoint Newton gostava de Ler - Saber em Gel.pdf
 
BULLYING NÃO É AMOR.pdf LIVRO PARA TRABALHAR COM ALUNOS ATRAVÉS DE PROJETOS...
BULLYING NÃO É AMOR.pdf LIVRO PARA TRABALHAR COM ALUNOS ATRAVÉS DE PROJETOS...BULLYING NÃO É AMOR.pdf LIVRO PARA TRABALHAR COM ALUNOS ATRAVÉS DE PROJETOS...
BULLYING NÃO É AMOR.pdf LIVRO PARA TRABALHAR COM ALUNOS ATRAVÉS DE PROJETOS...
 
Slides Lição 9, Betel, Ordenança para uma vida de santificação, 2Tr24.pptx
Slides Lição 9, Betel, Ordenança para uma vida de santificação, 2Tr24.pptxSlides Lição 9, Betel, Ordenança para uma vida de santificação, 2Tr24.pptx
Slides Lição 9, Betel, Ordenança para uma vida de santificação, 2Tr24.pptx
 
Apresentação_Primeira_Guerra_Mundial 9 ANO-1.pptx
Apresentação_Primeira_Guerra_Mundial 9 ANO-1.pptxApresentação_Primeira_Guerra_Mundial 9 ANO-1.pptx
Apresentação_Primeira_Guerra_Mundial 9 ANO-1.pptx
 
Projeto aLeR+ o Ambiente - Os animais são nossos amigos.pdf
Projeto aLeR+ o Ambiente - Os animais são nossos amigos.pdfProjeto aLeR+ o Ambiente - Os animais são nossos amigos.pdf
Projeto aLeR+ o Ambiente - Os animais são nossos amigos.pdf
 
ptoposta curricular de geografia.da educação de jovens a e adultos
ptoposta curricular de geografia.da educação de jovens a e adultosptoposta curricular de geografia.da educação de jovens a e adultos
ptoposta curricular de geografia.da educação de jovens a e adultos
 
Sequência Didática - Cordel para Ensino Fundamental I
Sequência Didática - Cordel para Ensino Fundamental ISequência Didática - Cordel para Ensino Fundamental I
Sequência Didática - Cordel para Ensino Fundamental I
 
APOSTILA JUIZ DE PAZ capelania cristã.pdf
APOSTILA JUIZ DE PAZ capelania cristã.pdfAPOSTILA JUIZ DE PAZ capelania cristã.pdf
APOSTILA JUIZ DE PAZ capelania cristã.pdf
 
LIÇÃO 9 - ORDENANÇAS PARA UMA VIDA DE SANTIFICAÇÃO.pptx
LIÇÃO 9 - ORDENANÇAS PARA UMA VIDA DE SANTIFICAÇÃO.pptxLIÇÃO 9 - ORDENANÇAS PARA UMA VIDA DE SANTIFICAÇÃO.pptx
LIÇÃO 9 - ORDENANÇAS PARA UMA VIDA DE SANTIFICAÇÃO.pptx
 
Acróstico - Reciclar é preciso
Acróstico   -  Reciclar é preciso Acróstico   -  Reciclar é preciso
Acróstico - Reciclar é preciso
 
.Template .padrao .slides .TCC .2024 ppt
.Template .padrao .slides .TCC .2024 ppt.Template .padrao .slides .TCC .2024 ppt
.Template .padrao .slides .TCC .2024 ppt
 
Caça-palavras ortografia M antes de P e B.
Caça-palavras    ortografia M antes de P e B.Caça-palavras    ortografia M antes de P e B.
Caça-palavras ortografia M antes de P e B.
 
Aula01 - ensino médio - (Filosofia).pptx
Aula01 - ensino médio - (Filosofia).pptxAula01 - ensino médio - (Filosofia).pptx
Aula01 - ensino médio - (Filosofia).pptx
 
repertório coringa para qualquer tema - Redação Enem
repertório coringa para qualquer tema - Redação Enemrepertório coringa para qualquer tema - Redação Enem
repertório coringa para qualquer tema - Redação Enem
 
APOSTILA DE TEXTOS CURTOS E INTERPRETAÇÃO.pdf
APOSTILA DE TEXTOS CURTOS E INTERPRETAÇÃO.pdfAPOSTILA DE TEXTOS CURTOS E INTERPRETAÇÃO.pdf
APOSTILA DE TEXTOS CURTOS E INTERPRETAÇÃO.pdf
 
Unificação da Itália e a formação da Alemanha
Unificação da Itália e a formação da AlemanhaUnificação da Itália e a formação da Alemanha
Unificação da Itália e a formação da Alemanha
 

Capítulo1 - Introdução a Sistemas Distribuídos - Coulouris

  • 1. SMD0050 - SISTEMAS DISTRIBUÍDOS Prof. Dr. Windson Viana de Carvalho Créditos : 64h Prática e Teórica 1
  • 2. Livro Adotado Coulouris, Dollimore, Kindberg and Blair Distributed Systems: Concepts and Design Edition 5, © Addison-Wesley 2012
  • 3. Sistemas Distribuídos? -Sistemas compostos por hardware e software localizados em lugares físicos distintos que se comunicam através de mensagens enviadas via uma rede de computadores -Concorrência entre processos -Processos executam em paralelo -Não existe relógio global -Coordenação por mensagens -Falhas independentes -Tratamento de exceções, design pensando em falhas 3
  • 4. Exemplo de Sistema Distribuído com múltiplos dispositivos
  • 5. Domínios de Aplicação e suas tecnologias de SD Finance and commerce eCommerce e.g. Amazon and eBay, PayPal, online banking and trading The information society Web information and search engines, ebooks, Wikipedia; social networking: Facebook and MySpace. Creative industries and online gaming, music and film in the home, user- entertainment generated content, e.g. YouTube, Flickr Healthcare health informatics, on online patient records, monitoring patients Education e-learning, virtual learning environments; distance learning Transport and logistics GPS in route finding systems, map services: Google Maps, Google Earth Science The Grid as an enabling technology for collaboration between scientists Environmental management sensor technology to monitor earthquakes, floods or tsunamis 5
  • 6. Ementa I. Introdução a Sistemas Distribuídos I. Capítulos 1 e 2 II. Comunicação Interprocessos I. Capítulo 4 III. Processos e Threads I. Parte do Capítulo 6 II. Atividades Práticas com programação em sockets IV. Objetos Distribuídos I. Capítulo 5 e material adicional de OSGi 6
  • 7. Ementa V. Sistemas P2P I. Capítulo 10 e Capítulo 2 do Kurose (Redes) V. Coordenação I. Capítulo 12 V. Distributed Shared Memory I. Capítulo 18 (Espaço de tuplas) II. Atividades Práticas V. Web Services e Cloud Computing I. Capítulo 19 e material professor Fernando Trinta II. Trabalho de Implementação 7
  • 8. Avaliações • Duas provas • Atividades práticas em laboratório • Trabalho de Implementação • Média Final: (2*MP + Trabalho + MPráticas) /4 8
  • 9. A WEB • Aplicações e protocolos executando na Web são o típicos exemplos de SD • HTTP, DNS, SMTP, Browser • Qual o grande objetivo? • Compartilhamento de recursos • Modelo arquitetural cliente-servidor • Cliente : invoca uma operação no servidor remoto • Servidor: responde a invocação com um recurso ou resultado de um método • Múltiplos clientes! 9
  • 10. Quão grande é o número de servidores? Date Computers Web servers Percentage 1993, July 1,776,000 130 0.008 1995, July 6,642,000 23,500 0.4 1997, July 19,540,000 1,203,096 6 1999, July 56,218,000 6,598,697 12 2001, July 125,888,197 31,299,592 25 2003, July ~200,000,000 42,298,371 21 2005, July 353,284,187 67,571,581 19 + de 600 milhões em 2012
  • 11. Desafios de SD I. Heterogeneidade II. Abertura (openess) III. Segurança IV. Escalabilidade V. Tratamento e Recuperação de Falhas VI. Concorrência VII. Transparência 14
  • 12. Heterogeneidade • Múltiplos dispositivos, plataformas, modelos de codificação dos dados, tipos de navegadores, condições de acesso • Soluções • Máquinas Virtuais • Standards • Middlewares • Mecanismos de Adaptação 15
  • 13. Middleware • Middleware mascara heterogeneidade de sistemas distribuídos • Java VM: SO • CORBA: Linguagem • OSGi • Trata de concorrência, portabilidade, interoperabilidade • API única, protocolo comum, conjunto de serviços • Middlewares tradicionais facilitam a vida do desenvolvedor pela abstração de transparência.
  • 14. Modelos de Middleware Tradicionais • Middleware orientados a transação • Middleware com memória compartilhada • Middleware orientados a mensagem • Middleware orientados a RPC • Middleware orientados a Objetos • Middleware Adaptativo • Middleware Multimídia
  • 15. Memória Compartilhada <“olá!”, 4, 3.15> Memória Compartilhada Middleware
  • 16. Orientado a Mensagem “olá!” Fila Middleware
  • 17. RPC/Objetos “olá!” Middleware
  • 18. Abertura ou Sistemas Abertos • Sistemas capazes de serem acessados, integrados e modificados facilmente por terceiros Não dependem de um único vendedor ou proprietário para serem utilizados • Exige o uso de Padrões (Standards) abertos • HTTP, XML, WSDL, HTML, SOAP • WIFI, Bluetooth, DLNA, UPNP • OSGi https://api.twitter.com/1.1/statuses/mentions_timeline.jso n?count=2&since_id=14927799 21
  • 19. Escalabilidade • Suportar aumento de carga e de clientes conectados Sem perda de performance Sem aumento de custos desnecessários Evitando gargalos (bottlenecks) • Uso de elasticidade, virtualização e replicação • Modelos arquiteturais descentralizados ou menos dependentes de um único ponto (gargalo) 22
  • 20. Tratamento de Falhas • Detecção de Faltas ou Falhas • Mascarar Falhas • Tolerar Falhas • Recuperação em caso de falhas • Soluções • Redundância • Controle de Transações 23
  • 21. Transparência Access transparency: enables local and remote resources to be accessed using identical operations. Location transparency: enables resources to be accessed without knowledge of their physical or network location (for example, which building or IP address). Concurrency transparency: enables several processes to operate concurrently using shared resources without interference between them. Replication transparency: enables multiple instances of resources to be used to increase reliability and performance without knowledge of the replicas by users or application programmers. Failure transparency: enables the concealment of faults, allowing users and application programs to complete their tasks despite the failure of hardware or software components. Mobility transparency: allows the movement of resources and clients within a system without affecting the operation of users or programs. Performance transparency: allows the system to be reconfigured to improve performance as loads vary. Scaling transparency: allows the system and applications to expand in scale without change to the system structure or the application algorithms.
  • 22. Como ficam esses conceitos na Web? Web servers Browsers http://www.google.comlsearch?q=obama www.google.com www.cdk5.net Internet http://www.cdk5.net/ www.w3c.org File system of http://www.w3.org/standards/faq.html#conformance www.w3c.org standards faq.html Instructor’s Guide for Coulouris, Dollimore, Kindberg and Blair, Distributed Systems: Concepts and Design Edn. 5 © Pearson Education 2012