A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

1/54 Sistemas Computacionais Distribuídos e a Web Sistemas Distribuídos e a WEB Disciplina: Sistemas Computacionais Distribuídos Professor: Marcos José

Apresentações semelhantes


Apresentação em tema: "1/54 Sistemas Computacionais Distribuídos e a Web Sistemas Distribuídos e a WEB Disciplina: Sistemas Computacionais Distribuídos Professor: Marcos José"— Transcrição da apresentação:

1 1/54 Sistemas Computacionais Distribuídos e a Web Sistemas Distribuídos e a WEB Disciplina: Sistemas Computacionais Distribuídos Professor: Marcos José Santana Aluno: Roberto Rigolin Ferreira Lopes São Carlos, 01 de novembro de 2007 Presente e Futuro

2 2/54 Sistemas Computacionais Distribuídos e a Web Objetivo do Seminário Discutir as principais tecnologias e protocolos empregados no desenvolvimento de sistemas distribuídos que utilizam a Web. A good plan, violently executed now, is better than a perfect plan next week. (George S. Patton, )

3 3/54 Sistemas Computacionais Distribuídos e a Web Agenda Sistemas Distribuídos Web Conectividade: Passado, Presente e Futuro Tecnologias e Protocolos da Web Ajax, Feeds RSS, Mashup Sistemas Web-based Online e Hibrido Computação Móvel Pocket Switched Networks - PSNs Talk low, talk slow, and don't talk too much. (John Wayne)

4 4/54 Sistemas Computacionais Distribuídos e a Web Sistemas Computacionais Distribuídos Grupo de computadores com capacidade de processamento autônomo, interconectado por uma rede. Em caso de falha em um dos computadores o sistema não é totalmente comprometido. Características: S.O. para unificar e integrar Autonomia cooperativa Compartilhamento de recursos Distribuição geográfica Tolerância a falhas Escalabilidade

5 5/54 Sistemas Computacionais Distribuídos e a Web Web Conjunto de serviços disponibilizados na Internet Páginas Web, , Feeds RSS, Web Services e etc... Foi concebida a partir de protocolos e tecnologias suportadas e/ou viabilizadas pela pilha de protocolos TCP/IP

6 6/54 Sistemas Computacionais Distribuídos e a Web Conectividade - Passado Telefonia Necessidade de cabos ubíquos Diversas tentativas de transmissão de dados A necessidade de chaveamento de canais físicos não atendiam as exigências militares Não era tolerante a falhas

7 7/54 Sistemas Computacionais Distribuídos e a Web Conectividade - Passado Telefonia – Chaveamento de circuito Os militares queriam tolerância a falhas.

8 8/54 Sistemas Computacionais Distribuídos e a Web Conectividade - Presente Comutação de pacotes IP Cada pacote carrega as informações necessárias para sua entrega Mecanismos de roteamento são empregados

9 9/54 Sistemas Computacionais Distribuídos e a Web Conectividade - Presente

10 10/54 Sistemas Computacionais Distribuídos e a Web Conectividade - Presente Sistema tolerante a falhas!

11 11/54 Sistemas Computacionais Distribuídos e a Web Pilha TCP/IP IP UDP HTTP SMTP FTP TCP SSL Transporte SOAP Aplicação Rede

12 12/54 Sistemas Computacionais Distribuídos e a Web Conectividade - Presente ARPANET no início de 1970 A pilha TCP/IP foi projetada e implementada neste contexto O endereço IP indicava localização física

13 13/54 Sistemas Computacionais Distribuídos e a Web Internet? ou Web? IP UDP HTTPSMTPFTP TCP SSL Internet SOAP Web Web – camada 5 (Aplicação) Internet – camadas 3 e 4 (Rede e Transporte)

14 14/54 Sistemas Computacionais Distribuídos e a Web Web Foi criada por Timothy John Berners-Lee no CERN (Conseil Européen pour la Recherche Nucléaire) 1989 Proposta de um projeto de hipertexto 1991 a Web foi disponibilizada mundialmente 1993 Nasce o Mosaic 1994 criação do W3C O modelo de desenvolvimento da Web é baseado na especificação de padrões de domínio público

15 15/54 Sistemas Computacionais Distribuídos e a Web Primeira página Web Foi colocada online em 7 de agosto de 1991

16 16/54 Sistemas Computacionais Distribuídos e a Web Tecnologias e Protocolos da Web Protocolos: HTTP, HTTPS, IMAP, SMTP, POP, SOAP, XHTTP e etc... Tecnologias: AJAX, Feeds RSS, REST, DHTML, Java Script, DOM, XSLT, RDF, Atom e etc...

17 17/54 Sistemas Computacionais Distribuídos e a Web AJAX (Asynchronous Javascript And XML) Permite a criação de requisições assíncronas por meio de um conjunto de tecnologias: XHTML e CSS - Apresentação DOM - Interação Dinâmica XML e XSLT - Intercâmbio e manipulação de dados XMLHttpRequest – Recuperação assíncrona Java Script – Para permitir o uso das supracitadas

18 18/54 Sistemas Computacionais Distribuídos e a Web Feeds RSS (Really Simple Syndication) É utilizado para disponibilizar o conteúdo de sites e aplicações dinâmicas. Disponibiliza o conteúdo em XML Atualizações no conteúdo podem ser facilmente recuperadas e apresentadas Permite a agregação de conteúdo entre sites e aplicações Facilita o acompanhamento de conteúdos dinâmicos Amplamente utilizado em blogs e sites de notícias.

19 19/54 Sistemas Computacionais Distribuídos e a Web Mashup Consiste na utilização de conteúdo disponibilizado por mais de uma fonte com objetivo de criar um novo serviço completo Faz uso de RSS e AJAX Mashup típicos nos dias atuais: Mapas Video e Foto Busca e Compras Notícias

20 20/54 Sistemas Computacionais Distribuídos e a Web Mashup Mapas mais fotos ou vídeos.

21 21/54 Sistemas Computacionais Distribuídos e a Web Mashup Notícias

22 22/54 Sistemas Computacionais Distribuídos e a Web

23 23/54 Sistemas Computacionais Distribuídos e a Web Sistemas Web-based Online O navegador é a plataforma Depende da rede de comunicação Interface Web Híbrido Online/Offline Mescla as vantagens e desvantagens das suas abordagens Projeto mais complexo Interface de Desktop e/ou Web

24 24/54 Sistemas Computacionais Distribuídos e a Web Sistemas Web online Todos os dados requisitados devem ser recuperados em um servidor na Internet Projeto simples Fácil programação Utilização ineficiente da rede IMG SRC:

25 25/54 Sistemas Computacionais Distribuídos e a Web Sistemas Web online – Data Layer Data Layer permite que os dados recuperados pela aplicação sejam persistidos localmente Permite o uso mais eficiente da rede IMG SRC:

26 26/54 Sistemas Computacionais Distribuídos e a Web Sistemas Web online – Data Layer e Switch Data Switch implementa a mesma interface da Data Layer, contudo pode encaminhar ou não as requisições para a Data Layer O usuário pode não desejar consultar os dados persistidos Essencial para chavear do modo online para offline e vice-e-versa IMG SRC:

27 27/54 Sistemas Computacionais Distribuídos e a Web Sistemas Web Híbrido online/offline Utiliza uma camada de dados para o servidor e para a base de dados local Permite o uso da aplicação em modo offline O usuário escolhe o modo de funcionamento IMG SRC:

28 28/54 Sistemas Computacionais Distribuídos e a Web Sistemas Web Híbrido online/offline/sync Permite que dados gerados em modo offline sejam sincronizados com um servidor na Internet Viabiliza o desenvolvimento de aplicações que necessitam da entrada de dados do usuário IMG SRC:

29 29/54 Sistemas Computacionais Distribuídos e a Web Construindo Apps Híbridas Google Gears

30 30/54 Sistemas Computacionais Distribuídos e a Web Google Gears Um exemplo:

31 31/54 Sistemas Computacionais Distribuídos e a Web Google Gears db = google.gears.factory.create('beta.database', '1.0'); if (db) { // Abre o banco e cria a tabela se nao existir db.open('database-demo'); db.execute('create table if not exists Demo' + ' (Phrase varchar(255), Timestamp int)'); // Apresenta as as frases persistidas displayRecentPhrases(); } Abre o banco de dados e cria tabela

32 32/54 Sistemas Computacionais Distribuídos e a Web Google Gears Insere a frase na base de dados local: var elm = document.getElementById('submitValue'); var phrase = elm.value; var currTime = new Date().getTime(); // Insere o novo item. db.execute('insert into Demo values(?, ?)',[phrase, curTime]); // Atualiza interface. elm.value = ''; displayRecentPhrases();

33 33/54 Sistemas Computacionais Distribuídos e a Web Google Gears Recupera as frases na base de dados local: // Recupera as 3 entradas mais recentes e apaga as outras rs = db.execute('select * from Demo order by Timestamp desc'); var index = 0; while (rs.isValidRow()) { if (index < 3) { recentPhrases[index] = rs.field(0); } else { db.execute('delete from Demo where Timestamp=?', [rs.field(1)]); } ++index; rs.next(); } rs.close();

34 34/54 Sistemas Computacionais Distribuídos e a Web Adobe Integrated Runtime (AIR) Funcionalidades semelhantes ao Google Gears: Persistência de dados local Permite a criação de aplicações com interface rica SDK free Necessita de um runtime instalado Não tem suporte para Linux (em desenvolvimento)

35 35/54 Sistemas Computacionais Distribuídos e a Web Mozilla Prism Proxy: HTTP, SMTP e POP Permite o uso de aplicações Web em modo offline

36 36/54 Sistemas Computacionais Distribuídos e a Web Colaboração com Peer-to-Peer Tem promovido uma grande mudança nos padrões de uso da Internet Vantagens sobre o modelo Cliente/Servidor: Não depende de servidores administrados por terceiros Colaboração direta entre os usuários Permite que recursos sejam compartilhados na Internet

37 37/54 Sistemas Computacionais Distribuídos e a Web Colaboração com Peer-to-Peer Exemplos:

38 38/54 Sistemas Computacionais Distribuídos e a Web Conectividade - Futuro O problema mudou! Projetos: FIND (USA) FIRE (Europa)

39 39/54 Sistemas Computacionais Distribuídos e a Web Conectividade - Futuro Redes centradas em conteúdo Também chamadas redes de disseminação Não é necessário saber o IP da máquina onde o conteúdo está disponível REQ RESP

40 40/54 Sistemas Computacionais Distribuídos e a Web Conectividade Em suma, Passado: alocação de um canal físico Atualmente: comutação de pacotes + redes overlay Futuro: redes centradas em conteúdo A conectividade está se tornando ubíqua.

41 41/54 Sistemas Computacionais Distribuídos e a Web Computação Ubíqua Universo da Computação Ubíqua Computação Móvel Nothing shocks me. I'm a scientist. Harrison Ford ( ), as Indiana Jones

42 42/54 Sistemas Computacionais Distribuídos e a Web Computação Móvel Tem o objetivo de atender a necessidade de computação e comunicação de usuários nômades, enquanto eles se movem de um lugar para outro de forma: Transparente; Integrada; Conveniente. Paradigma parcialmente implementado.

43 43/54 Sistemas Computacionais Distribuídos e a Web Exemplo de Mobilidade Imaginemos um CIO (Chief Information Officer) que tem as seguintes atividades programadas: i) reunião com a diretoria da empresa; ii) visita a um cliente.

44 44/54 Sistemas Computacionais Distribuídos e a Web Exemplo de Mobilidade Sala de Reuniões

45 45/54 Sistemas Computacionais Distribuídos e a Web Exemplo de Mobilidade Sala de Reuniões > Escritório

46 46/54 Sistemas Computacionais Distribuídos e a Web Exemplo de Mobilidade Sala de Reuniões > Escritório > Em trânsito

47 47/54 Sistemas Computacionais Distribuídos e a Web Exemplo de Mobilidade Sala de Reuniões > Escritório > Em trânsito > Empresa do cliente

48 48/54 Sistemas Computacionais Distribuídos e a Web Computação Móvel Este paradigma está mudando nosso dia-a-dia, devido a possibilidade de acesso à serviços de rede em qualquer lugar e a qualquer hora. Viabilizado pela disponibilidade de: Dispositivos portáteis; Redes de acesso sem fio.

49 49/54 Sistemas Computacionais Distribuídos e a Web Pocket Switched Networks - PSNs São redes tolerantes a atrasos que utilizam encontros oportunísticos para permitir a comunicação em ambientes sem infra-estrutura ou onde não é necessário o uso de uma. AP

50 50/54 Sistemas Computacionais Distribuídos e a Web Pocket Switched Networks - PSN

51 51/54 Sistemas Computacionais Distribuídos e a Web Pocket Switched Networks - PSN

52 52/54 Sistemas Computacionais Distribuídos e a Web Haggle

53 53/54 Sistemas Computacionais Distribuídos e a Web Conclusões A Web é um grande Sistema Distribuído Existe um significativo esforço para tornar as aplicações Web-based similares às aplicações Desktop-based. Com isso, as aplicações poderão usufruir do melhor dos dois mundos A Computação Móvel em breve será o paradigma predominante Neste contexto, os SDs serão acessados por meio de dispositivos e redes limitadas.

54 54/54 Sistemas Computacionais Distribuídos e a Web Obrigado pela atenção! Roberto Rigolin Ferreira Lopes All progress is based upon a universal innate desire on the part of every organism to live beyond its income.Everything you can imagine is real. (Samuel Butler, )


Carregar ppt "1/54 Sistemas Computacionais Distribuídos e a Web Sistemas Distribuídos e a WEB Disciplina: Sistemas Computacionais Distribuídos Professor: Marcos José"

Apresentações semelhantes


Anúncios Google