• Save
Capítulo1 - Introdução a Sistemas Distribuídos - Coulouris
Upcoming SlideShare
Loading in...5
×
 

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

on

  • 1,892 views

Introdução a Sistemas Distribuídos, cadeira do curso de Sistemas e Mídias Digitais

Introdução a Sistemas Distribuídos, cadeira do curso de Sistemas e Mídias Digitais

Statistics

Views

Total Views
1,892
Views on SlideShare
1,892
Embed Views
0

Actions

Likes
1
Downloads
0
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

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

  • SMD0050 - SISTEMAS DISTRIBUÍDOSProf. Dr. Windson Viana de CarvalhoCréditos : 64hPrática e Teórica 1
  • Livro AdotadoCoulouris, Dollimore, Kindberg and BlairDistributed Systems: Concepts and DesignEdition 5, © Addison-Wesley 2012
  • Sistemas Distribuídos? -Sistemas compostos por hardware e softwarelocalizados em lugares físicos distintos que secomunicam através de mensagens enviadas via umarede 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 deSistema Distribuído com múltiplos dispositivos
  • Domínios de Aplicação e suas tecnologias de SDFinance and commerce eCommerce e.g. Amazon and eBay, PayPal, online banking and tradingThe 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, FlickrHealthcare health informatics, on online patient records, monitoring patientsEducation e-learning, virtual learning environments; distance learningTransport and logistics GPS in route finding systems, map services: Google Maps, Google EarthScience The Grid as an enabling technology for collaboration between scientistsEnvironmental management sensor technology to monitor earthquakes, floods or tsunamis 5
  • EmentaI. Introdução a Sistemas Distribuídos I. Capítulos 1 e 2II. Comunicação Interprocessos I. Capítulo 4III. Processos e Threads I. Parte do Capítulo 6 II. Atividades Práticas com programação em socketsIV. Objetos Distribuídos I. Capítulo 5 e material adicional de OSGi 6
  • EmentaV. Sistemas P2P I. Capítulo 10 e Capítulo 2 do Kurose (Redes)V. Coordenação I. Capítulo 12V. Distributed Shared Memory I. Capítulo 18 (Espaço de tuplas) II. Atividades PráticasV. 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 otí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 Percentage1993, July 1,776,000 130 0.0081995, July 6,642,000 23,500 0.41997, July 19,540,000 1,203,096 61999, July 56,218,000 6,598,697 122001, July 125,888,197 31,299,592 252003, July ~200,000,000 42,298,371 212005, July 353,284,187 67,571,581 19 + de 600 milhões em 2012
  • Desafios de SDI. HeterogeneidadeII. Abertura (openess)III. SegurançaIV. EscalabilidadeV. Tratamento e Recuperação de FalhasVI. ConcorrênciaVII. 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ênciaAccess 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.orgFile system of http://www.w3.org/standards/faq.html#conformancewww.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ícios1.41.14 26