sistemas distribuídos -...

14
1 Page 1 Departamento de Engenharia Informática Sistemas Distribuídos 12/13 Sistemas Distribuídos 1 Departamento de Engenharia Informática O que é um sistema distribuído?

Upload: letram

Post on 16-Nov-2018

212 views

Category:

Documents


0 download

TRANSCRIPT

1

Page 1

Departamento de Engenharia Informática

Sistemas Distribuídos

12/13 Sistemas Distribuídos 1

Departamento de Engenharia Informática

O que é um sistema distribuído?

2

Page 2

Departamento de Engenharia Informática

Sistema Distribuído

Sistema de componentes software/hardware

localizadas em computadores ligados em rede

que comunicam e coordenam as suas acções através de troca de mensagens.

Departamento de Engenharia Informática

Consequências?

• Concorrência– Diferentes nós do sistema distribuído executam-se em

concorrência

– Bom ou mau?

• Não há relógio global– Relógios locais não estão necessariamente iguais

– Única forma de coordenação é por troca de mensagens

• Falhas independentes– Qualquer componente pode falhar de forma independente das

outras

– Bom ou mau?

28-02-2007 Sistemas Distribuídos

3

Page 3

Departamento de Engenharia Informática

Alguns exemplos de Sistemas

Distribuídos

12/13 Sistemas Distribuídos 5

Departamento de Engenharia Informática

Motores de pesquisa na Web

12/13 Sistemas Distribuídos 6

4

Page 4

Departamento de Engenharia Informática

Redes Sociais Abertas

Departamento de Engenharia Informática

Jogos em Rede

5

Page 5

Departamento de Engenharia Informática

Sistemas automáticos

de trading financeiro

Departamento de Engenharia Informática

Tendências actuais

em sistemas distribuídos

12/13 Sistemas Distribuídos 10

6

Page 6

Departamento de Engenharia Informática

A Internet moderna

12/13 Sistemas Distribuídos 11

intranet

ISP

desktop computer:

backbone

satellite link

server:

☎☎☎☎

network link:

☎☎☎☎

☎☎☎☎

☎☎☎☎

Departamento de Engenharia Informática

Computação móvel e ubíqua

7

Page 7

Departamento de Engenharia Informática

Sistemas de multimédia distribuídos

Departamento de Engenharia Informática

Computação em nuvem

8

Page 8

Departamento de Engenharia Informática

Objectivos e Programa

• Estudar as técnicas fundamentais para a construção de sistemas distribuídos

– Redes de dados e programação da comunicação distribuída (revisão)

– RPC (Remote Procedure Call), RMI, Web Services

– Gestão de Nomes

– Segurança

• Canais seguros

• Autenticação

• Autorização

– Tolerância a Faltas

• Replicação

• Transacções

12/13 Sistemas Distribuídos 15

Departamento de Engenharia Informática

Objectivos

• O objectivo principal é analisar as arquitecturas

e as soluções técnicas que permitem desenvolver aplicações distribuídas, garantindo os requisitos não funcionais como a reconfigurabilidade, segurança, tolerância a faltas e escalabilidade.

– Para tal é necessário analisar os problemas que se colocam nos sistemas distribuídos e quais são as soluções para os ultrapassar.

12/13 Sistemas Distribuídos 16

9

Page 9

Departamento de Engenharia Informática

Objectivos

• O objectivo global subdivide-se: – na caracterização dos sistemas distribuídos;

– arquitecturas de referência;

– políticas e mecanismos de suporte à comunicação distribuída: troca de mensagens, procedimentos remotos;

– gestão de nomes distribuída;

– politicas e mecanismos de segurança

– tolerância a faltas.

• Para todas as tecnologias abordadas procura-se relacioná-las com os ambientes de desenvolvimento de aplicações e com as diversas plataformas de middleware e de suporte a sistemas distribuídos existentes no mercado.

12/13 Sistemas Distribuídos 17

Departamento de Engenharia Informática

Corpo Docente

• José Alves Marques

– Responsável Teóricas -Alameda

• João Barreto

– Responsável Teóricas - Tagus

• Miguel Pardal

– Responsável Laboratórios – Tagus e Alameda

• João Garcia

– Laboratórios – Alameda

12/13 Sistemas Distribuídos 18

10

Page 10

Departamento de Engenharia Informática

Bibliografia principal

Distributed Systems: Concepts and Design George Coulouris, Jean Dollimore, Tim Kindberg and Gordon Blair. Addison Wesley/Pearson Education. 5th Edition, 2011.

12/13 Sistemas Distribuídos 19

Departamento de Engenharia Informática

Bibliografia secundária

• Concurrency Control and Recovery in Database Systems, Philip A. Bernstein, Vassos Hadzilacos, Nathan Goodman Addison-Wesley Publishing,

• Tecnologia de Sistemas Distribuídos, José Alves Marques e Paulo Guedes, FCA Editora de Informática, 2ª edição, 1999.

• Distributed Systems: Principles and Paradigms (2nd Edition), Andrew Tanenbaum, Maarten Van Steen, Prentice Hall, 2006

• Java Web Services Architecture, J McGovern, S. Tyagi, M. Stevens, S. Mathew, Morgan Kaufmann, 2003

Outras referências:• Web Services, Concepts, Architectures and Applications, G Alonso,

F Casati, H Kuno, V Machiraju, Springer Verlag, 2004• Distributed Systems, S. Mullender. Addison-Wesley. 1993.

• Transaction Processing: Concepts and Techniques, J. Gray & A. Reuter. Morgan Kaufmann. 1993.

12/13 Sistemas Distribuídos 20

11

Page 11

Departamento de Engenharia Informática

Avaliação de conhecimentos

• Avaliação da disciplina tem 3 componentes: contínua (5%), projecto (50%) e teórica (45%)

– A nota mínima para aprovação à cadeira é de 10 (dez) valores

– No cálculo da média dos testes e da nota final não são feitos arredondamentos das notas parcelares

• Para informação detalhada, consultar o site da cadeira!

12/13 Sistemas Distribuídos 21

Departamento de Engenharia Informática

Avaliação de Conhecimentos:

Avaliação Contínua (5%)

• Avalia a 2ª, 3ª e 4ª aulas de laboratório

• Cada aula inclui problema a resolver em grupos de 3

– Enunciado base do problema é conhecido desde a semana anterior à aula

– Mini-exercício adicional secreto é indicado a cada grupo na própria aula

• Solução é apresentada ao docente de laboratório até ao final da aula de laboratório

12/13 Sistemas Distribuídos 22

12

Page 12

Departamento de Engenharia Informática

Avaliação de Conhecimentos:

Projecto (50%)

• O projecto realizar-se-á em duas fases– Cada fase corresponde a um ponto intercalar de avaliação que

permitirá aferir os grupos que estão a realizar o trabalho de uma forma que lhes permita concluir o projecto com aprovação.

• Alunos de LEIC:– Possível fazer projecto conjunto com a disciplina de

Engenharia de Software

– Grupo de 6 grupos

• Alunos de LERC:– Projecto em grupos de 3

– Não se permite projecto conjunto

• Nota mínima: 8 valores12/13 Sistemas Distribuídos 23

Departamento de Engenharia Informática

Avaliação de Conhecimentos:

Avaliação Teórica (45%)

• Nota mínima de 9,0 valores

• Constituída por 2 sub-componentes:– Avaliação por Exames/Testes escritos (85%)

• Dois percursos possíveis:

– 1º teste, 2º teste, repescagem de um dos testes

– 1º exame, 2º exame

• Nota da repescagem e do 2º exame só contam se melhorarem

– Avaliação por mini-testes nas aulas teóricas (15%)

• 2 mini-testes curtos em aulas teóricas a anunciar

• Mini-testes só contam se melhorarem a nota da teórica

– Se média dos 2 mini-testes for inferior à nota da sub-componente exame/testes, mini-testes são ignorados e a avaliação teórica passa a ser dada 100% pela nota da componente exame/testes

12/13 Sistemas Distribuídos 24

13

Page 13

Departamento de Engenharia Informática

Avaliação de Conhecimentos:

Outros casos

• Alunos repetentes– A nota do par (projecto, av. contínua) do ano passado pode ser

aproveitada este ano

• Alunos com direito a época especial– Permitido realizar exame (50%) e projecto (50%) em época

especial

– Mais detalhes no site

12/13 Sistemas Distribuídos 26

Departamento de Engenharia Informática

Datas

• Avaliação Teórica:– 1º Teste – 16 de Abril– 2º Teste / 1º Exame – 5 de Junho– Repescagens / 2º Exame – 25 de Junho

• Projecto:– 1ª Entrega – 12 de Abril

• Disponibilização do enunciado – 20 de Março

– 2ª Entrega – 10 de Maio• Disponibilização do enunciado – 13 de Abril

– Discussão do projecto: Semanas de 13Maio a 24 de Maio

• Avaliação Contínua:– Aulas de laboratório começam já na próxima 4ª feira– Trabalhos de avaliação contínua na 2ª, 3ª e 4ª

semanas de laboratório

12/13 Sistemas Distribuídos 27

14

Page 14

Departamento de Engenharia Informática

Inscrições em Laboratórios

• As inscrições para os laboratórios abrem na 6ª feira às 14h

• Informações detalhadas sobre as inscrições serão publicadas em breve no site da cadeira

• Alunos sem grupo ou outras dúvidas sobre inscrições, enviar mail para [email protected]

12/13 Sistemas Distribuídos 28