Baixe o app para aproveitar ainda mais
Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
* * Sistemas Distribuídos Carlos Ferraz cagf@cin.ufpe.br * * Agenda Motivação O que são os Sistemas Distribuídos Definição Exemplo como funcionam e como são estruturados Desafios “Convergência digital” Habilidades para o desenvolvimento de Sistemas Distribuídos O profissional de Sistemas Distribuídos * * Motivação Nos últimos anos, os sistemas distribuídos, particularmente os serviços e aplicações baseados na Web e Internet de forma geral, têm adquirido interesse e importância sem precedentes. Técnicas de sistemas distribuídos, como comunicação entre processos, invocação remota, nomeação distribuída, entre outras, fornecem a infra-estrutura de execução que suporta as aplicações em rede de hoje. * * O que são? * * Definição de Sistemas Distribuídos “Um sistema distribuído é uma coleção de computadores independentes que aparecem para os usuários do sistema como um único computador.” (Tanenbaum) Hardware: máquinas autônomas Software: os usuários pensam do sistema como um único computador “Um sistema em que componentes de hardware e software localizados em computadores em rede se comunicam e coordenam suas ações por passagem de mensagens.” (Coulouris et al) * * Por que ter sistemas distribuídos? Integração de sistemas Ex: sistema de alarme + sistema de agenda Processamento de alto desempenho Paralelismo aproveitando recursos de processamento distribuídos em rede Segurança Distribuição dificulta ataques, como em estratégias de guerra Alta disponibilidade Falhas parciais Entre outras vantagens... * * Exemplo: Web Internet Servidor DNS Cliente “browser” Servidor DNS Servidor DNS Servidor DNS Servidor Web Servidor de Arquivos Servidor BD Porta 80 * * Como funcionam e como são estruturados? Clientes/servidores RPC Objetos distribuídos Baseados nos conceitos de orientação a objetos Aplicação Sistema Operacional Rede C S Sistema Operacional Distribuído Sistema Operacional Distribuído O O O O O C/S C/S * * Desafios Heterogeneidade Abertura Segurança Tratamento de falhas Concorrência Transparência * * Convergência Digital Computação em rede Software & Hardware para divertimento & informação Mídia Filmes Música Notícias Difusão de conteúdo em rede Sistemas Distribuídos Multimídia * * Desenvolvimento * * Habilidades Um pouco de redes Muito de plataformas de suporte a distribuição A maioria das linguagens de programação incorporam modelos de programação distribuída (RPC, RMI etc.) Engenharia de software Requisitos funcionais Documentação .... Afinal está se desenvolvendo a Engenharia de Software Distribuído!!! Requisitos não-funcionais também: Desempenho Segurança Tolerância a falhas, etc... * * Profissão * * O Profissional de Sistemas Distribuídos Desenvolve sistemas em redes, que vão desde sistemas operacionais, passando por middleware, até aplicações inerentemente distribuídas envolvendo educação a distância, telemedicina, vídeo-conferência, jogos em rede, entre outros... O mercado de trabalho para o profissional de sistemas distribuídos é formado de empresas de desenvolvimento de software ("fábricas de software"), básico ou aplicativo de rede, provedores de sistemas de informações na Internet/Web, ... * * Conclusão Os profissionais de sistemas distribuídos, redes e mídias colaboram para viabilizar a convergência digital, que permite computação ubíqua, ou seja, computação a qualquer hora e em qualquer lugar.
Compartilhar