Arquitetura de Sistemas Distribuídos. Introdução a Sistemas Distribuídos



Documentos relacionados
Profs. Deja e Andrei

Tencologia em Análise e Desenvolvimento de Sistemas Disciplina: WEB I Conteúdo: Arquitetura de Software Aula 03

Introdução ao Modelos de Duas Camadas Cliente Servidor

BANCO DE DADOS DISTRIBUÍDOS e DATAWAREHOUSING

Características Carlos Ferraz

Sistemas Distribuídos

Comparação SDs X Scs

REDES DE COMPUTADORES

Sistemas Distribuídos. Introdução

Introdução. Definição de um Sistema Distribuído (1) Definição de um Sistema Distribuído(2) Metas de Sistemas Distribuídos (2)

Bancos de dados distribuídos Prof. Tiago Eugenio de Melo

Sistemas Distribuídos. Introdução. Edeyson Andrade Gomes.

5.2 MAN s (Metropolitan Area Network) Redes Metropolitanas

Sistemas Distribuídos. Ricardo Ribeiro dos Santos

Evolução na Comunicação de

UFG - Instituto de Informática

Projeto de Sistemas Distribuídos. Prof. Andrêza Leite

Classificação de SO (Sistemas Operacionais) Técnico de Informática 2º. Módulo Profa. Madalena Pereira da Silva

MÓDULO 8 ARQUITETURA DOS SISTEMAS DE BANCO DE DADOS

Arquitetura dos Sistemas de Informação Distribuídos

Unidade 1. Conceitos Básicos

Redes de Computadores e suas classificações. Maurício Severich

Curso de Aprendizado Industrial Desenvolvedor WEB

Sistemas Cliente-Servidor

SISTEMAS DISTRIBUÍDOS

Sistemas Operacionais. Prof. André Y. Kusumoto

MÓDULO 11 ELEMENTOS QUE FAZEM PARTE DO PROJETO DO SISTEMA

Camadas de Serviço de Hardware e Software em Sistemas Distribuídos. Introdução. Um Serviço Provido por Múltiplos Servidores

Metas de um Sistema Distribuído

Entrar neste site/arquivo e estudar esse aplicativo Prof. Ricardo César de Carvalho

IW10. Rev.: 02. Especificações Técnicas

Sistemas Distribuídos: Conceitos e Projeto Caracterização de Sistemas Distribuídos

Sistemas Distribuídos

Sistemas Operacionais II. Prof. Gleison Batista de Sousa

Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP)

1

UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 14 PROFª BRUNO CALEGARO

COORDENAÇÃO DE TECNOLOGIA (COTEC) ABRIL/2011

Padrões Arquiteturais e de Integração - Parte 1

MODELO CLIENTE SERVIDOR

ADMINISTRAÇÃO DE SISTEMA OPERACIONAL DE REDE (AULA 1)

Universidade de Brasília

Conceitos Básicos de Rede. Um manual para empresas com até 75 computadores

Redes de Computadores

Redes de Computadores. Prof. Dr. Rogério Galante Negri

Engª de Produção Prof.: Jesiel Brito. Sistemas Integrados de Produção ERP. Enterprise Resources Planning

Material 5 Administração de Recursos de HW e SW. Prof. Edson Ceroni

Comunicação em Sistemas Distribuídos. Conceitos: Paradigma C/S. Conceitos: Paradigma C/S. Paradigma Cliente/Servidor

SISTEMAS DISTRIBUIDOS

Prof. Marcos Ribeiro Quinet de Andrade Universidade Federal Fluminense - UFF Pólo Universitário de Rio das Ostras - PURO

SISTEMAS DISTRIBUÍDOS

SISTEMAS OPERACIONAIS

CSI IT Solutions. Facilidade de uso

Meio Físico. Mensagem. Protocolo. Emissor e Receptor. Data Terminal Equipment Data Communications Equipment

Disciplina de Banco de Dados Introdução

Introdução. Arquitetura de Rede de Computadores. Prof. Pedro Neto

GESTÃO DE SISTEMAS OPERACIONAIS II

Considerações no Projeto de Sistemas Cliente/Servidor

Tecnologia e Infraestrutura. Conceitos de Redes

PARANÁ GOVERNO DO ESTADO

Servidor de Dados. Sistemas de Informação Módulo 4

Administração de Sistemas de Informação Gerenciais

Relatorio do trabalho pratico 2

Guia de Conectividade Worldspan Go Res! A V A N Ç A D O

Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064

Desculpe, mas este serviço (jogo) encontra se em manutenção.

Sistemas Operacionais

INTERNET CONCEITOS. Internet é a "grande rede mundial de computadores"

SMTP, POP, IMAP, DHCP e SNMP. Professor Leonardo Larback

Rede de Computadores

Sistemas Operacionais Gerência de Dispositivos

Revisão. Karine Peralta

Redes de Computadores. Professor MSc Wylliams Barbosa Santos wylliams.wordpress.com

Sistemas Distribuídos Capítulos 3 e 4 - Aula 4

Sistemas Operacionais Introdução. Professora: Michelle Nery

REDE DE COMPUTADORES

Gerência de Redes. Arquitetura de Gerenciamento.

3 Um Framework Orientado a Aspectos para Monitoramento e Análise de Processos de Negócio

MANUAL DE IMPLANTAÇÃO SISTEMA DE INVENTÁRIO CACIC GOVERNO FEDERAL SOFTWARE PÚBLICO

Sistemas Distribuídos. Aleardo Manacero Jr.

Gerência de Redes. Profa. Márcia Salomão Homci

Introdução Redes de Computadores. Filipe Raulino

Prof. Marcelo Machado Cunha Parte 1

Rede Corporativa. Tutorial 10 mar 2009 Fabio Montoro. Introdução

INTRODUÇÃO A REDES DE COMPUTADORES (DEFINIÇÕES) Prof. Msc. Hélio Esperidião

Multiplexador. Permitem que vários equipamentos compartilhem um único canal de comunicação

AP_ Conta Aplicativo para digitação e envio de contas médicas no padrão TISS

Sistemas Operacionais Carlos Eduardo Portela Serra de Castro

EVOLUÇÃO DOS SIST. DE COMPUTAÇÃO DÉC. DE 50 E 60

UNIP UNIVERSIDADE PAULISTA. Curso: Redes de Computadores e Telecomunicações

Transcrição:

Introdução a Sistemas Distribuídos

Definição: "Um sistema distribuído é uma coleção de computadores autônomos conectados por uma rede e equipados com um sistema de software distribuído." "Um sistema distribuído é uma coleção de computadores independentes que aparenta ao usuário ser um computador único."

Outra definição de Sistema Distribuído "Você sabe que tem um sistema distribuído quando a falha de um computador do qual você nunca ouviu falar faz com que você pare completamente de trabalhar." [Leslie Lamport]

Outra definição de Sistema Distribuído "Você sabe que tem um sistema distribuído quando a falha de um computador do qual você nunca ouviu falar faz com que você pare completamente de trabalhar." [Leslie Lamport]

Avanços tecnológicos Invenção de redes de computadores de alta velocidade (anos 70): Redes locais (Local Area Network - LAN) Redes de longa distância (Wide Area Network WAN) Desenvolvimento de microprocessadores potentes (anos 80).

Considerações É relativamente fácil agrupar um grande número de CPUs, conectando-as por uma rede de alta velocidade. O software para sistemas distribuídos é completamente diferente do software para sistemas centralizados e está apenas começando a se desenvolver.

Exemplos de SD Rede local de computadores de uma universidade ou companhia Rede local de computadores em uma fábrica Um grande banco com muitas agências, cada qual com um computadores e caixas automáticas

Exemplos de SD (continuação) Sistema de reserva de passagens aéreas Sistema de controle de estoque, vendas e entregas numa cadeia de lojas Serviços da Internet: WWW Sistemas de acesso a recursos de multimídia e de conferência

Vantagens de SD sobre SC Melhor relação custo/benefício Capacidade de processamento além dos limites práticos de SC Maior confiabilidade e disponibilidade Crescimento gradativo da capacidade de processamento

Vantagens de SD sobre PCs independentes Compartilhamento de dados entre usuários Compartilhamento de recursos de hardware e software Comunicação entre pessoas Flexibilidade na distribuição de tarefas de acordo com as aplicações

Desvantagens de SD Falta de software adequado Falhas e saturação da rede de comunicação podem eliminar as vantagens de SD Segurança pode ser comprometida: fácil acesso a dados e recursos reservados

Sistemas operacionais de rede Estações de trabalho conectadas via LAN Cada estação tem seu próprio sistema operacional Ferramentas para login remoto e cópia de arquivos entre estações Servidores de arquivos e ferramentas para causar aparência de arquivo local

Sistemas distribuídos autênticos A rede toda tem aparência de ser um único sistema timesharing: virtual uniprocessor, single-system image Mecanismo global para comunicação entre processos Gerenciamento de processos homogêneo Sistema de arquivos homogêneo

Sistemas timesharing para multiprocessadores Fila única de processos prontos para execução: melhor distribuição de carga CPUs especializadas em: executar processos, controlar periféricos, executar sistema operacional (gerenciar a memória global) Sistema de arquivos comporta-se de maneira semelhante a um SC

Comparação de SW para SD SO de rede SO SO para distribuído multiproc. Parece um SC Não Sim Sim Mesmo SO Não Sim Sim Cópias de SO N N 1 Comunicação Protocolos comuns Fila única de execução Arquivos compartilhados Mensagens Memória compartilhada Sim Sim Não Não Não Sim

Características básicas de SD Compartilhamento de recursos Extensibilidade (openness) Concorrência Escalabilidade (crescimento gradativo suave) Tolerância a falhas Transparência

Compartilhamento de recursos Componentes de hardware: discos, impressoras,... Componentes de software: arquivos, bancos de dados,... Modelos básicos: Modelo cliente-servidor Modelo baseado em objetos

Extensibilidade Extensões de hardware: periféricos, memória, interfaces de comunicação,... Extensões de software: funções de SO, protocolos de comunicação,... Interfaces chaves são públicas (system calls) Mecanismo uniforme de comunicação entre processos

Concorrência Mais de um processo em execução a cada instante: Atividades separadas de usuários Independência de recursos Localização de processos servidores em computadores distintos Acesso concorrente a recursos compartilhados requer sincronização

Escalabilidade Quantidade de trabalho envolvido no processamento de qualquer requisição de acesso a um recurso compartilhado independe do tamanho da rede Técnicas: replicação, caching, servidores múltiplos

Tolerância a falhas Falhas de hardware e software (em CPUs e redes): programas param ou produzem resultados errados Abordagens: Redundância de hardware (Ex: banco de dados replicado em diversos servidores) Recuperação por software: manter dados permanentes sempre consistentes

Transparência Esconder do usuário e do programador de aplicações a separação de componenentes em um sistema distribuído, tal que este seja visto como um sistema centralizado Formas de transparência: acesso, localização, concorrência, replicação, falha, migração, desempenho e escala

Transparência de acesso Operações de acesso a objetos de informação são idênticas para objetos locais e remotos Exemplo: Operação de envio de uma mensagem eletrônica especificando o destinatário através de seu endereço Internet

Transparência de localização Acesso a um objeto ocorre sem que seja necessário o conhecimento de sua localização Exemplo: Operação de envio de uma mensagem eletrônica especificando o destinatário através de seu endereço Internet

Outras formas de transprência Concorrência: processos operam concorrentemente usando objetos de informação comuns sem interferência entre eles. Replicação: várias instâncias de um objeto de informação são usadas sem requerer o conhecimento das réplicas pelos usuários e aplicações. Falha: mascaramento de falhas de hardware e software. Migração: movimento de objetos de informação dentro do sistema não afeta a operação de usuários e aplicações. Desempenho: reconfiguração do sistema para melhorar desempenho conforme a carga varia. Escala: o sistema e as aplicações podem expandir em escala sem requerer modificações na estrutura do sistema ou nos algoritmos das aplicações.

Modelo Cliente-Servidor

Conceitos: É uma arquitetura onde o processamento da informação é dividido em módulos ou processos distintos. Um processo é responsável pela manutenção da informação (Servidor), enquanto que outro é responsável pela obtenção dos dados (Cliente). BATTISTI, (2001, pág. 38).

Estrutura Básica Em uma rede de computadores existem uma ou mais máquinas que atuam como servidores, disponibilizando recursos para as demais máquinas, as quais atuam como clientes. REQUISITA Cliente RESPONDE Servidor Executa

Estrutura Básica Temos servidores para arquivos, banco de dados, e outras funções, tais como: servidores de impressão, servidores web, etc. Servidor de Arquivos Banco de Dados Outros Serviços Clientes

ARQUITETURA CLIENTE/SERVIDOR Onde: Servidores: são equipamentos com maior poder de processamento e armazenamento; Clientes: geralmente microcomputadores PCs ligados em rede.

ARQUITETURA CLIENTE/SERVIDOR Principais características: Cliente: Inicia e termina as conversações com os Servidores, solicitando serviços distribuídos; Não se comunica com outros Clientes; Normalmente responsável pela entrada e saída de dados e comunicação com o usuário; Torna a rede transparente ao usuário; Hardware: pode ser um micro simples; Software: tem início e fim definido.

ARQUITETURA CLIENTE/SERVIDOR Principais características: Servidor: Execução contínua; Recebe e responde a solicitações dos Clientes; Não se comunica com outros Servidores; Presta serviços distribuídos; Atende a diversos Clientes simultaneamente; Hardware; exige máquinas mais robustas, com grande capacidade de processamento; Software: processo sempre em execução, aguardando ser chamado pelo Cliente.

Maiframes são computadores de grande porte que fazem processamento de dados de forma centralizada: modelo que até os anos 90 reinava absoluto. Principais Desvantagens do modelo maiframe: Serviços e recursos reduzidos; Centralização de dados e recursos de processamento; Inflexibilidade; Inversatibilidade; Custos elevados.

Aplicações em Duas Camadas: Banco de Dados Clientes

Aplicações em Duas Camadas: Foram utilizadas no início da implantação do modelo Cliente/ Servidor. Aqui, a aplicação Cliente responde pelas seguintes funções:. Apresentação: O código que gera a interface visível do programa faz parte da aplicação Cliente. Todos os formulários, menus e demais elementos visuais nele estão contidos. Então uma alteração na interface do programa requer a geração de uma nova versão para todos os computadores;

Lógica do Negócio: São as regras que definem como os dados serão acessados e processados. Toda a Lógica do Negócio fica no Cliente. Quando o programa Cliente é instalado, são instaladas todas as regras de acesso ao banco de dados. É necessária uma nova versão do programa cada vez que alterações ocorrerem e as regras mudarem. Também é necessário que todos os computadores que estejam com a versão anterior recebam a nova, mesmo que sejam centenas ou milhares de hosts.

Aplicações em Três Camadas: Servidor de Aplicações Servidor de Banco de Dados Clientes

Evolução: Retira as Regras do Negócio do cliente e as centraliza em um determinado ponto, o qual é chamado de servidor de aplicações: Servidor de Aplicações Servidor de Banco de Dados O acesso ao Banco de Dados é feito através das regras contidas no Servidor de Aplicações: facilidade de atualização das mesmas, pois estão centralizadas em um único ponto.

Características: As Regras do Negócio (lógica) foram deslocadas para o Servidor de Aplicações, então ali será determinada a maneira como os dados serão utilizados.. Todo o acesso do cliente ao Banco de Dados é feito de acordo com as regras contidas no Servidor de Aplicações. Não é possível o acesso ao B. de Dados sem primeiramente passar pelo Servidor de Aplicações.. No Servidor de B. de Dados reside toda informação necessária para o funcionamento da aplicação.

Melhoramentos: Atualização mais fácil das Regras do Negócio; Aumento da flexibilidade, conseqüentemente; Maior segurança e controle do acesso aos dados; Torna-se mais fácil manter a aplicação atualizada e garantir que todos os usuários terão acesso às alterações; Falha: Continua o problema de atualização da interface de aplicação, cada vez que sejam necessárias mudanças na interface. Porém, alterações nela são menos freqüentes do que as que ocorrem nas Regras do Negócio.

.Aplicações em Quatro Camadas. Idéia básica: Retirar a apresentação do cliente e centralizá-la em um determinado ponto, o qual na maioria dos casos é um Servidor web. Avanço: O cliente deixa de existir como um programa que precisa ser instalado em cada micro. O acesso à aplicação é feito através de um navegador: Internet Explorer, Netscape Navigator

Aplicações em Quatro Camadas Estrutura: Servidor de Aplicações Servidor Web Servidor de Banco de Dados Clientes

Esquema básico: Cliente quer acessar a aplicação acessa o endereço da mesma através do navegador servidor de aplicações verifica se ao cliente é permitido o acesso banco de dados liberado. http://www.empresaxy.com/sistemas/rh.aspx Servidor de Aplicações determina de que maneira os dados serão utilizados Banco de dados: informações necessárias

4 Camadas Cliente: Navegador; Apresentação: Servidor Web, onde serão feitas as alterações de interface; Lógica (Regras do Negócio): Servidor de Aplicações, onde serão feitas as alterações nas regras do negócio, quando necessárias; Dados: Servidor de Banco de Dados, com todas as informações necessárias.

Vantagens: Desvantagens: Serviços; Complexidade; Recursos; Comunicação. Protocolos; Localização; Descentralização; Escalabilidade; Integridade.

Exercícios de fixação 1. Defina com suas próprias palavras o que vem a ser um sistema distribuído. 2. Cite e explique rapidamente, três fatores que contribuíram para a disseminação dos sistemas distribuídos 3. Cite três exemplos de sistemas distribuídos 4. Cite e explique três vantagens dos sistemas distrbuídos sobre os sistemas centralizados 5. Cite e explique duas desvantagens na adoção de sistemas distrbuídos 6. Estabeleça uma comparação entre sistemas operacionais de redes e sistemas distribuídos autênticos

Exercícios de fixação 7. Explique o que vem a ser sistemas timesharing para multiprocessadores 8. Cite e explique três características dos sistemas distrbuídos 9. Diferencie o que vem a ser extensibilidade de escalabilidade em relação a sistemas distrbuídos 10.Defina o que vem a ser um sistema cliente-servidor 11. Caracterize o cliente e o servidor 12.Defina e exemplifique o que vem a ser uma aplicação em duas camadas 13.Defina e exemplifique o que vem a ser uma aplicação em três camadas 14.Diferencie uma aplicação em três camadas de outra em quatro camadas

Trabalhos complementares para N 1 (peso 8,0) 1. Lista de exercícios de fixação (neste documento) - Deverá ser resolvida individualmente, escrita a mão - Poderá ser utilizada como fonte de consulta na N1 - Entrega na data da mesma (em formato.pdf) - Valor: 0,5pto

Trabalhos complementares para N 1 (peso 8,0) 2. Pesquisa: Aplicações distribuídas e TI Verde - Atividade desenvolvida em grupos com até 5 integrantes - Poderá ser utilizada como fonte de consulta na N1 - Entrega na data da mesma (em formato.pdf) - Valor: 0,5pto

Trabalhos complementares para N 1 (peso 8,0) 3. Pesquisa: Modelos de programação em SD - Atividade desenvolvida em grupos com até 5 integrantes - Poderá ser utilizada como fonte de consulta na N1 - Entrega na data da mesma (em formato.pdf) - Valor: 1,0pto