SlideShare ist ein Scribd-Unternehmen logo
1 von 40
Downloaden Sie, um offline zu lesen
Sistemas
   Distribuídos
baseados na Web

Julio Cesar Rocha
Lucas Soares Silva
João Augusto Vianna
Sistemas Distribuídos baseados na Web

   INTRODUÇÃO

   •   História
   •   Arquitetura
   •   Processos
   •   Comunicação
   •   Nomeação
   •   Sincronização
   •   Consistência e replicação
   •   Falhas e segurança
Sistemas Distribuídos baseados na Web

   HISTÓRIA
   •   Criado no CERN por Tim Berners-Lee em
       1980

   •   Uniu hipertexto e a Internet

   •   Troca de informações entre pesquisadores

   •   Criação do Mosaic em 1993
Sistemas Distribuídos baseados na Web

   ARQUITETURA
   •   Uso do cliente-servidor

   •   URL para referenciar documentos
       o   http://www.meusite.com.br/arquivo.htm


   •   Cliente(navegador)
Sistemas Distribuídos baseados na Web

   ARQUITETURA
   •   Documentos WEB
       o   texto, aúdio, vídeo


   •   Linguagens de marcação
       o   HTML
       o   XML


   •   Documentos embutidos
       o   MIME
Sistemas Distribuídos baseados na Web

   MIME
Sistemas Distribuídos baseados na Web

   ARQUITETURA
   •   CGI
       o   multicamadas no servidor
       o   criação de documentos dinamicamente
Sistemas Distribuídos baseados na Web

   Serviços WEB
   •   Oferece serviços gerais para aplicações
       remotas sem interações imediatas de
       usuários finais.

   •   UDDI - contém descrições de serviços,
       permitindo assim que clientes procurem
       esses serviços.

   •   WDSL - serviços são descritos por meio da
       linguagem de serviços Web
Sistemas Distribuídos baseados na Web

   Serviços WEB
   •   SOAP - comunicação entre cliente e
       servidor
Sistemas Distribuídos baseados na Web

   PROCESSOS
  Cliente
  navegador
       o   proxy Web


   •   Navegador - programa que permite o
       usuário navegar pela Web, buscando
       páginas no servidor e mostrando as na tela

   •   Devem ser independentes da plataforma
Sistemas Distribuídos baseados na Web

   PROCESSOS
   •   Proxy Web - manipular protocolos de
       aplicação diferentes do HTTP
Sistemas Distribuídos baseados na Web

   PROCESSOS
   •   Servidor Web Apache
       o   servidor Web mais utilizado no mundo
       o   é um servidor independente de plataforma, e
           fornece seu próprio ambiente de execução básico,
           denominado Apache Portable Runtime (APR).


   •   Cluster de servidores
       o   minimizam problemas de sobrecarga em servidores
Sistemas Distribuídos baseados na Web

   PROCESSOS
Sistemas Distribuídos baseados na Web

   PROCESSOS
Sistemas Distribuídos baseados na Web

   COMUNICAÇÃO
  Protocolos utilizados:

   •   Sistemas Web tradicionais:
       o   HTTP


   •   Serviços Web em geral:
       o   Soap
Sistemas Distribuídos baseados na Web

   PROTOCOLO HTTP
   •   Protocolo de transferência de hipertexto
       (Hypertext Transfer Protocol)

   •   Toda comunicação cliente-servidor é
       baseada no HTTP
       o   Cliente envia uma mensagem para o servidor e
           espera por uma resposta


   •   É sem estado
       o   Não requer que o servidor mantenha informações
           sobre seus clientes
Sistemas Distribuídos baseados na Web

   PROTOCOLO HTTP
   •   Utiliza conexões TCP

   •   Sempre que o cliente emite uma requisição
       uma conexão TCP é estabelecida

   •   Não se preocupa com requisições e
       respostas perdidas
Sistemas Distribuídos baseados na Web

   HTTP 1.0 E ANTERIORES
   •   Conexão não persistente
       o   Cada requisição requer o estabelecimento de uma
           conexão separada


   •   Caro estabelecer conexões TCP

   •   É possível estabelecer conexões
       simultâneas
       o   Utilizado para ocultar a latência causada pelo tempo
           de estabelecimento de conexão
Sistemas Distribuídos baseados na Web

   HTTP 1.0 E ANTERIORES




      (a). Utilização de conexões não persistentes
Sistemas Distribuídos baseados na Web

   HTTP 1.1
   •   Conexão persistente
       o   Não é preciso de uma conexão separada para cada
           par requisição-resposta




   •   Um cliente pode emitir várias requisições
       sem esperar a resposta da anterior
Sistemas Distribuídos baseados na Web

   HTTP 1.1




        (b). Utilização de conexões persistentes
Sistemas Distribuídos baseados na Web

   MÉTODOS HTTP

 Operação                                     Descrição
   Head                   Requisição para retornar o cabeçalho de um documento

    Get                    Requisição para retornar um documento para o cliente

    Put                         Requisição para armazenar um documento

    Post     Fornecer dados que devem ser anexados a um documento ou conjunto de documentos

   Delete                         Requisição para apagar um documento




            (c). Operações suportadas pelo HTTP
Sistemas Distribuídos baseados na Web

   MENSAGENS HTTP
   •   Toda comunicação cliente-servidor ocorre
       por meio de mensagens
       o   São reconhecidas somente mensagens de
           requisição e resposta

            Código                       Frase
              200                          OK

              400           Bad Request (Requisição Inválida)

              403                  Forbidden (Proibido)

              404              Not Found (Não Encontrado)

              405       Method Not Allowed (Método Não Permitido)


(d). Exemplos de códigos de status das respostas do HTTP
Sistemas Distribuídos baseados na Web

   SOAP
   •   Protocolo simples de acesso a objeto
       (Simple Object Access Protocol)

   •   Parte da premissa que duas entidades que
       se comunicam tem muito pouco
       conhecimento em comum

   •   Possibilita por um meio simples que partes
       diferentes, que saibam muito pouco uma da
       outra, consigam se comunicar
Sistemas Distribuídos baseados na Web

   SOAP
   •   Reforça o protocolo HTTP
       o   Utiliza HTTP para a maioria de suas comunicações



   •   As mensagens são em grande parte
       baseadas em XML



   •   Utilização do XML questionada
       o   nterpretar mensagens XML costuma produzir um
           sério gargalo de desempenho
Sistemas Distribuídos baseados na Web

   NOMEAÇÃO
   •   Os nomes usados na Web sao
       denominados identificadores uniformes de
       recursos (Uniform Resource Identifiers), ou
       URI



   •   A URL (Uniform Resource Locato), é um
       URI que identifica um documento pela
       inclusão de informações sobre como e onde
       acessá-lo
Sistemas Distribuídos baseados na Web

   NOMEAÇÃO
Sistemas Distribuídos baseados na Web

   NOMEAÇÃO
Sistemas Distribuídos baseados na Web

   SINCRONIZAÇÃO
   •   Existem duas razões para crer que a
       sincronização em serviços Web não tem
       sido levada muito a sério:
       o   Em arquiteturas cliente-servidor servidores não se
           comunicam com servidores e nem clientes com
           clientes
       o   A Web é considerada como um sistema que, na
           maioria das vezes, é somente leitura
Sistemas Distribuídos baseados na Web

   SINCRONIZAÇÃO
   •   Porém há uma demanda crescente para
       fornecer suporte para autoria colaborativa
       de documentos Web.
       o   WebDAV (Web Distributed Authoring and
           Versioning) ou autoria e versões distribuídas na
           Web


   •   O WebDav conta com dois tipos de travas
       de escrita: a exclusiva e a compartilhada
Sistemas Distribuídos baseados na Web

   WEBDAV
   •   Trava de escrita exclusiva

       o   Somente um cliente tem o poder de travar o
           documento


   •   Trava de escrita compartilhada

       o   Vários clientes alteram o documento ao mesmo
           tempo, porém deve existir um cuidado para não
           ocorrer conflitos escrita-escrita
Sistemas Distribuídos baseados na Web

   CONSISTÊNCIA E REPLICAÇÃO
   •   Tem como objetivo garantir o desempenho e
       a disponibilidade dos documentos Web.



   •   Problema: Consistência!



   •   Solucão: Utilização de caches!
       o   Implementada através de Caches associadas a
           Proxy Web.
Sistemas Distribuídos baseados na Web

   CONSISTÊNCIA E REPLICAÇÃO

   A cache do lado do cliente:

    •   No browser: documento armazenado na
        cache do browser, de onde será carregado
        da próxima vez. (configuração feita pelo
        cliente)

   Proxy Web: aceita requisições e repassa para
   servidores → cache compartilhada
Sistemas Distribuídos baseados na Web

   CONSISTÊNCIA E REPLICAÇÃO
  Tipos de organização de cache:

  - Cache cooperativa ou distribuída:

   •   Ausência da cache em proxy Web?
       Verificação em alguns proxies vizinhos!

  Primordialmente com caches Web que
  pertencem à mesma organização e que estão
  na mesma LAN
Sistemas Distribuídos baseados na Web

   CONSISTÊNCIA E REPLICAÇÃO
Sistemas Distribuídos baseados na Web

   CONSISTÊNCIA E REPLICAÇÃO
  Tipos de organização de cache:
  - Cache Hierárquica:

   •   Caches posicionadas para uma região ou até
       mesmo em um país

   •   Caches pesquisadas de maneira hierárquica!
       Aumentar a latência de resposta

   •   Alta a probabilidade de encontrar cópia de
Sistemas Distribuídos baseados na Web

   FALHAS E SEGURANÇA
  Uma abordagem para estabelecer um canal
   seguro na Web é usar a camada de soquetes
   seguros (Secure Socket Layer – SSL),
   implementada originalmente pela Netscape:

   •   Uma definição padronizada é denominada protocolo
       de segurança na camada de transporte (Transport
       Layer Security – TLS)

   •   Esse protocolo é independente de aplicação.
Sistemas Distribuídos baseados na Web

   FALHAS E SEGURANÇA
Sistemas Distribuídos baseados na Web

    REFERÊNCIAS
  [1] Tanenbaum, A. S; Sistemas distribuídos - Princípios e
  Paradigmas; páginas 330-356.

  [2] Sistemas Distribuídos e a WEB; Acessado em 10 de junho de
  2012. http://www.sohand.icmc.usp.br/~rigolin/downloads/sistemasDist
  ribuidosWeb_Rigolin_20071101.pdf

  [3] Sistemas Distribuídos na Internet; Acessado em 11 de junho de
  2012.
  http://www.inf.unioeste.br/~marcio/SO/Aula10SistemasDistribuidos.pdf
Sistemas Distribuídos baseados na Web




       OBRIGADO!

Weitere ähnliche Inhalte

Was ist angesagt?

Tecnologia em Redes - Servidor WEB
Tecnologia em Redes - Servidor WEBTecnologia em Redes - Servidor WEB
Tecnologia em Redes - Servidor WEBelliando dias
 
Introdução a Web Services
Introdução a Web ServicesIntrodução a Web Services
Introdução a Web ServicesFabio Leal
 
Maratona JBoss 2010 - JBoss-ESB
Maratona JBoss 2010 - JBoss-ESBMaratona JBoss 2010 - JBoss-ESB
Maratona JBoss 2010 - JBoss-ESBDextra
 
Sistemas Distribuídos baseados na Web
Sistemas Distribuídos baseados na WebSistemas Distribuídos baseados na Web
Sistemas Distribuídos baseados na WebRafael Chagas
 
Samba, Squid, FTP, DHCP1
Samba, Squid, FTP, DHCP1Samba, Squid, FTP, DHCP1
Samba, Squid, FTP, DHCP1SoftD Abreu
 
Hospedagem Web Linux em Ambiente Virtualizado Hyper-V
Hospedagem Web Linux em Ambiente Virtualizado Hyper-VHospedagem Web Linux em Ambiente Virtualizado Hyper-V
Hospedagem Web Linux em Ambiente Virtualizado Hyper-VRodrigo Felipe Betussi
 
Web services, aplicações, acesso a aplicações, XML, API
Web services, aplicações, acesso a aplicações, XML, APIWeb services, aplicações, acesso a aplicações, XML, API
Web services, aplicações, acesso a aplicações, XML, APINuno Pereira
 
Introdução a programação para a Internet
Introdução a programação para a InternetIntrodução a programação para a Internet
Introdução a programação para a InternetLeonardo Soares
 

Was ist angesagt? (16)

Servidor web
Servidor webServidor web
Servidor web
 
Tecnologia em Redes - Servidor WEB
Tecnologia em Redes - Servidor WEBTecnologia em Redes - Servidor WEB
Tecnologia em Redes - Servidor WEB
 
Introdução a Web Services
Introdução a Web ServicesIntrodução a Web Services
Introdução a Web Services
 
Dreamweaver m18
Dreamweaver m18Dreamweaver m18
Dreamweaver m18
 
Maratona JBoss 2010 - JBoss-ESB
Maratona JBoss 2010 - JBoss-ESBMaratona JBoss 2010 - JBoss-ESB
Maratona JBoss 2010 - JBoss-ESB
 
06 - Servidor Apache
06 - Servidor Apache06 - Servidor Apache
06 - Servidor Apache
 
Web Sphere
Web SphereWeb Sphere
Web Sphere
 
A Estrutura de um Web Service
A Estrutura de um Web ServiceA Estrutura de um Web Service
A Estrutura de um Web Service
 
Sistemas Distribuídos baseados na Web
Sistemas Distribuídos baseados na WebSistemas Distribuídos baseados na Web
Sistemas Distribuídos baseados na Web
 
Samba, Squid, FTP, DHCP1
Samba, Squid, FTP, DHCP1Samba, Squid, FTP, DHCP1
Samba, Squid, FTP, DHCP1
 
Hospedagem Web Linux em Ambiente Virtualizado Hyper-V
Hospedagem Web Linux em Ambiente Virtualizado Hyper-VHospedagem Web Linux em Ambiente Virtualizado Hyper-V
Hospedagem Web Linux em Ambiente Virtualizado Hyper-V
 
Linux - Servidor Web Apache
Linux - Servidor Web ApacheLinux - Servidor Web Apache
Linux - Servidor Web Apache
 
Web services, aplicações, acesso a aplicações, XML, API
Web services, aplicações, acesso a aplicações, XML, APIWeb services, aplicações, acesso a aplicações, XML, API
Web services, aplicações, acesso a aplicações, XML, API
 
Servidores de Aplicações
Servidores de AplicaçõesServidores de Aplicações
Servidores de Aplicações
 
Introdução a programação para a Internet
Introdução a programação para a InternetIntrodução a programação para a Internet
Introdução a programação para a Internet
 
Web Services
Web ServicesWeb Services
Web Services
 

Andere mochten auch

Fontes Alternativas de Energia
Fontes Alternativas de EnergiaFontes Alternativas de Energia
Fontes Alternativas de EnergiaGabriela Santos
 
Tema 10 naturaleza y conservación del material hereditario
Tema 10 naturaleza y conservación del material hereditarioTema 10 naturaleza y conservación del material hereditario
Tema 10 naturaleza y conservación del material hereditariopacozamora1
 
Activ 1 analisis_materiales_mult_nelson_sequeda
Activ 1 analisis_materiales_mult_nelson_sequedaActiv 1 analisis_materiales_mult_nelson_sequeda
Activ 1 analisis_materiales_mult_nelson_sequedaNelson Gamboa
 
2012 08-25-30 & 09-1- aulas 06-08 - segmentação
2012 08-25-30 & 09-1- aulas 06-08 - segmentação2012 08-25-30 & 09-1- aulas 06-08 - segmentação
2012 08-25-30 & 09-1- aulas 06-08 - segmentaçãoFernando Monteiro D'Andrea
 
Fedian Reglamento De Crédito 2009
Fedian   Reglamento De Crédito 2009Fedian   Reglamento De Crédito 2009
Fedian Reglamento De Crédito 2009fediancali
 
Guia numero 1° de mantenimiento predictivo,correctivo y preventivo de computa...
Guia numero 1° de mantenimiento predictivo,correctivo y preventivo de computa...Guia numero 1° de mantenimiento predictivo,correctivo y preventivo de computa...
Guia numero 1° de mantenimiento predictivo,correctivo y preventivo de computa...yeferson uribe
 
Chapter 8 reporting by group 6 (autosaved) (autosaved)
Chapter 8 reporting by group 6 (autosaved) (autosaved)Chapter 8 reporting by group 6 (autosaved) (autosaved)
Chapter 8 reporting by group 6 (autosaved) (autosaved)Christine Watts
 
Ficha 488956 497405 497426_administracion del soporte tecnico
Ficha 488956 497405 497426_administracion del soporte tecnicoFicha 488956 497405 497426_administracion del soporte tecnico
Ficha 488956 497405 497426_administracion del soporte tecnicoSebastian Marin
 
F25000232600019990000204 s3adjuntasentencia20121114135652
F25000232600019990000204 s3adjuntasentencia20121114135652F25000232600019990000204 s3adjuntasentencia20121114135652
F25000232600019990000204 s3adjuntasentencia20121114135652Carlos Martínez
 
Reglamento a la ley de propiedad horizontal del ecuador
Reglamento a la ley de propiedad horizontal del ecuadorReglamento a la ley de propiedad horizontal del ecuador
Reglamento a la ley de propiedad horizontal del ecuadorLuyi Encalada
 
Tn comercio internacional nuevo 2009[1]
Tn comercio internacional nuevo 2009[1]Tn comercio internacional nuevo 2009[1]
Tn comercio internacional nuevo 2009[1]guest5738d4
 
Reporte proyecto formativo 773907 - 752363
Reporte proyecto formativo   773907 - 752363Reporte proyecto formativo   773907 - 752363
Reporte proyecto formativo 773907 - 752363Duban Jaraba Mendez
 
Основы Reverse Engineering
Основы Reverse EngineeringОсновы Reverse Engineering
Основы Reverse EngineeringAnthony Shoumikhin
 

Andere mochten auch (20)

Cálculo de fretes
Cálculo de fretesCálculo de fretes
Cálculo de fretes
 
Fontes Alternativas de Energia
Fontes Alternativas de EnergiaFontes Alternativas de Energia
Fontes Alternativas de Energia
 
Administracion financiera para hoteles
Administracion financiera para hotelesAdministracion financiera para hoteles
Administracion financiera para hoteles
 
Tema 10 naturaleza y conservación del material hereditario
Tema 10 naturaleza y conservación del material hereditarioTema 10 naturaleza y conservación del material hereditario
Tema 10 naturaleza y conservación del material hereditario
 
Activ 1 analisis_materiales_mult_nelson_sequeda
Activ 1 analisis_materiales_mult_nelson_sequedaActiv 1 analisis_materiales_mult_nelson_sequeda
Activ 1 analisis_materiales_mult_nelson_sequeda
 
2012 08-25-30 & 09-1- aulas 06-08 - segmentação
2012 08-25-30 & 09-1- aulas 06-08 - segmentação2012 08-25-30 & 09-1- aulas 06-08 - segmentação
2012 08-25-30 & 09-1- aulas 06-08 - segmentação
 
Módulo I - Curso juventud, cultura de paz y democracia
Módulo I - Curso juventud, cultura de paz y democraciaMódulo I - Curso juventud, cultura de paz y democracia
Módulo I - Curso juventud, cultura de paz y democracia
 
Fedian Reglamento De Crédito 2009
Fedian   Reglamento De Crédito 2009Fedian   Reglamento De Crédito 2009
Fedian Reglamento De Crédito 2009
 
Portfolio raul
Portfolio raul Portfolio raul
Portfolio raul
 
Diccionario
DiccionarioDiccionario
Diccionario
 
Guia numero 1° de mantenimiento predictivo,correctivo y preventivo de computa...
Guia numero 1° de mantenimiento predictivo,correctivo y preventivo de computa...Guia numero 1° de mantenimiento predictivo,correctivo y preventivo de computa...
Guia numero 1° de mantenimiento predictivo,correctivo y preventivo de computa...
 
Chapter 8 reporting by group 6 (autosaved) (autosaved)
Chapter 8 reporting by group 6 (autosaved) (autosaved)Chapter 8 reporting by group 6 (autosaved) (autosaved)
Chapter 8 reporting by group 6 (autosaved) (autosaved)
 
Ficha 488956 497405 497426_administracion del soporte tecnico
Ficha 488956 497405 497426_administracion del soporte tecnicoFicha 488956 497405 497426_administracion del soporte tecnico
Ficha 488956 497405 497426_administracion del soporte tecnico
 
F25000232600019990000204 s3adjuntasentencia20121114135652
F25000232600019990000204 s3adjuntasentencia20121114135652F25000232600019990000204 s3adjuntasentencia20121114135652
F25000232600019990000204 s3adjuntasentencia20121114135652
 
Reglamento a la ley de propiedad horizontal del ecuador
Reglamento a la ley de propiedad horizontal del ecuadorReglamento a la ley de propiedad horizontal del ecuador
Reglamento a la ley de propiedad horizontal del ecuador
 
Evidencias 2013
Evidencias 2013Evidencias 2013
Evidencias 2013
 
Tn comercio internacional nuevo 2009[1]
Tn comercio internacional nuevo 2009[1]Tn comercio internacional nuevo 2009[1]
Tn comercio internacional nuevo 2009[1]
 
Evidencias 2013
Evidencias 2013Evidencias 2013
Evidencias 2013
 
Reporte proyecto formativo 773907 - 752363
Reporte proyecto formativo   773907 - 752363Reporte proyecto formativo   773907 - 752363
Reporte proyecto formativo 773907 - 752363
 
Основы Reverse Engineering
Основы Reverse EngineeringОсновы Reverse Engineering
Основы Reverse Engineering
 

Ähnlich wie Sistemas Distribuídos baseados na Web: Arquitetura, Processos e Comunicação

Soluções de Web Caching e Web Acceleration - Domingos Parra Novo
Soluções de Web Caching e Web Acceleration - Domingos Parra NovoSoluções de Web Caching e Web Acceleration - Domingos Parra Novo
Soluções de Web Caching e Web Acceleration - Domingos Parra NovoTchelinux
 
TÓPICOS AVANÇADOS EMENG. DE COMPUTAÇÃO II 2 semana.pdf
TÓPICOS AVANÇADOS EMENG. DE COMPUTAÇÃO II 2 semana.pdfTÓPICOS AVANÇADOS EMENG. DE COMPUTAÇÃO II 2 semana.pdf
TÓPICOS AVANÇADOS EMENG. DE COMPUTAÇÃO II 2 semana.pdfLeandrovilela19
 
Introdução a Arquitetura de Sistemas
Introdução a Arquitetura de SistemasIntrodução a Arquitetura de Sistemas
Introdução a Arquitetura de SistemasIgor Takenami
 
Web Sphere Application Server
Web Sphere Application ServerWeb Sphere Application Server
Web Sphere Application ServerFabricio Carvalho
 
Unidade1ainternet 110928173442-phpapp02
Unidade1ainternet 110928173442-phpapp02Unidade1ainternet 110928173442-phpapp02
Unidade1ainternet 110928173442-phpapp02DP7
 
funcionamento da internet
funcionamento da internetfuncionamento da internet
funcionamento da internetMarco Pinheiro
 
Aula03 - protocolo http
Aula03 -  protocolo httpAula03 -  protocolo http
Aula03 - protocolo httpCarlos Veiga
 
Service deployer FISL 2013
Service deployer FISL 2013Service deployer FISL 2013
Service deployer FISL 2013choreos
 
Desenvolvemos para web?
Desenvolvemos para web?Desenvolvemos para web?
Desenvolvemos para web?Luis Vendrame
 
5. Pesquisa AtravéS Dos Operadores Booleanos (14 04 09)
5. Pesquisa AtravéS Dos Operadores Booleanos (14 04 09)5. Pesquisa AtravéS Dos Operadores Booleanos (14 04 09)
5. Pesquisa AtravéS Dos Operadores Booleanos (14 04 09)susana12345
 
Conhecendo o Novo REST Framework
Conhecendo o Novo REST FrameworkConhecendo o Novo REST Framework
Conhecendo o Novo REST FrameworkMario Guedes
 
Arquitetura e Integração de sistemas
Arquitetura e Integração de sistemasArquitetura e Integração de sistemas
Arquitetura e Integração de sistemasJether Rodrigues
 
Ebook Apache Server: Guia Introdutório
Ebook Apache Server: Guia IntrodutórioEbook Apache Server: Guia Introdutório
Ebook Apache Server: Guia IntrodutórioFernando Palma
 
Sistemas Distribuídos - Aula 07 - Servicos Web
Sistemas Distribuídos - Aula 07 - Servicos WebSistemas Distribuídos - Aula 07 - Servicos Web
Sistemas Distribuídos - Aula 07 - Servicos WebArthur Emanuel
 

Ähnlich wie Sistemas Distribuídos baseados na Web: Arquitetura, Processos e Comunicação (20)

Aula 1
Aula 1Aula 1
Aula 1
 
Soluções de Web Caching e Web Acceleration - Domingos Parra Novo
Soluções de Web Caching e Web Acceleration - Domingos Parra NovoSoluções de Web Caching e Web Acceleration - Domingos Parra Novo
Soluções de Web Caching e Web Acceleration - Domingos Parra Novo
 
TÓPICOS AVANÇADOS EMENG. DE COMPUTAÇÃO II 2 semana.pdf
TÓPICOS AVANÇADOS EMENG. DE COMPUTAÇÃO II 2 semana.pdfTÓPICOS AVANÇADOS EMENG. DE COMPUTAÇÃO II 2 semana.pdf
TÓPICOS AVANÇADOS EMENG. DE COMPUTAÇÃO II 2 semana.pdf
 
Introdução a Arquitetura de Sistemas
Introdução a Arquitetura de SistemasIntrodução a Arquitetura de Sistemas
Introdução a Arquitetura de Sistemas
 
Web Services
Web ServicesWeb Services
Web Services
 
Web service
Web serviceWeb service
Web service
 
Preparando sua arquitetura para microservicos
Preparando sua arquitetura para microservicosPreparando sua arquitetura para microservicos
Preparando sua arquitetura para microservicos
 
Web Sphere Application Server
Web Sphere Application ServerWeb Sphere Application Server
Web Sphere Application Server
 
Unidade1ainternet 110928173442-phpapp02
Unidade1ainternet 110928173442-phpapp02Unidade1ainternet 110928173442-phpapp02
Unidade1ainternet 110928173442-phpapp02
 
funcionamento da internet
funcionamento da internetfuncionamento da internet
funcionamento da internet
 
Aula03 - protocolo http
Aula03 -  protocolo httpAula03 -  protocolo http
Aula03 - protocolo http
 
Service deployer FISL 2013
Service deployer FISL 2013Service deployer FISL 2013
Service deployer FISL 2013
 
Desenvolvemos para web?
Desenvolvemos para web?Desenvolvemos para web?
Desenvolvemos para web?
 
5. Pesquisa AtravéS Dos Operadores Booleanos (14 04 09)
5. Pesquisa AtravéS Dos Operadores Booleanos (14 04 09)5. Pesquisa AtravéS Dos Operadores Booleanos (14 04 09)
5. Pesquisa AtravéS Dos Operadores Booleanos (14 04 09)
 
Conhecendo o Novo REST Framework
Conhecendo o Novo REST FrameworkConhecendo o Novo REST Framework
Conhecendo o Novo REST Framework
 
Arquitetura e Integração de sistemas
Arquitetura e Integração de sistemasArquitetura e Integração de sistemas
Arquitetura e Integração de sistemas
 
Servidor Web.pdf
Servidor Web.pdfServidor Web.pdf
Servidor Web.pdf
 
Estudos Technocorp
Estudos TechnocorpEstudos Technocorp
Estudos Technocorp
 
Ebook Apache Server: Guia Introdutório
Ebook Apache Server: Guia IntrodutórioEbook Apache Server: Guia Introdutório
Ebook Apache Server: Guia Introdutório
 
Sistemas Distribuídos - Aula 07 - Servicos Web
Sistemas Distribuídos - Aula 07 - Servicos WebSistemas Distribuídos - Aula 07 - Servicos Web
Sistemas Distribuídos - Aula 07 - Servicos Web
 

Sistemas Distribuídos baseados na Web: Arquitetura, Processos e Comunicação

  • 1. Sistemas Distribuídos baseados na Web Julio Cesar Rocha Lucas Soares Silva João Augusto Vianna
  • 2. Sistemas Distribuídos baseados na Web INTRODUÇÃO • História • Arquitetura • Processos • Comunicação • Nomeação • Sincronização • Consistência e replicação • Falhas e segurança
  • 3. Sistemas Distribuídos baseados na Web HISTÓRIA • Criado no CERN por Tim Berners-Lee em 1980 • Uniu hipertexto e a Internet • Troca de informações entre pesquisadores • Criação do Mosaic em 1993
  • 4. Sistemas Distribuídos baseados na Web ARQUITETURA • Uso do cliente-servidor • URL para referenciar documentos o http://www.meusite.com.br/arquivo.htm • Cliente(navegador)
  • 5. Sistemas Distribuídos baseados na Web ARQUITETURA • Documentos WEB o texto, aúdio, vídeo • Linguagens de marcação o HTML o XML • Documentos embutidos o MIME
  • 7. Sistemas Distribuídos baseados na Web ARQUITETURA • CGI o multicamadas no servidor o criação de documentos dinamicamente
  • 8. Sistemas Distribuídos baseados na Web Serviços WEB • Oferece serviços gerais para aplicações remotas sem interações imediatas de usuários finais. • UDDI - contém descrições de serviços, permitindo assim que clientes procurem esses serviços. • WDSL - serviços são descritos por meio da linguagem de serviços Web
  • 9. Sistemas Distribuídos baseados na Web Serviços WEB • SOAP - comunicação entre cliente e servidor
  • 10. Sistemas Distribuídos baseados na Web PROCESSOS Cliente navegador o proxy Web • Navegador - programa que permite o usuário navegar pela Web, buscando páginas no servidor e mostrando as na tela • Devem ser independentes da plataforma
  • 11. Sistemas Distribuídos baseados na Web PROCESSOS • Proxy Web - manipular protocolos de aplicação diferentes do HTTP
  • 12. Sistemas Distribuídos baseados na Web PROCESSOS • Servidor Web Apache o servidor Web mais utilizado no mundo o é um servidor independente de plataforma, e fornece seu próprio ambiente de execução básico, denominado Apache Portable Runtime (APR). • Cluster de servidores o minimizam problemas de sobrecarga em servidores
  • 15. Sistemas Distribuídos baseados na Web COMUNICAÇÃO Protocolos utilizados: • Sistemas Web tradicionais: o HTTP • Serviços Web em geral: o Soap
  • 16. Sistemas Distribuídos baseados na Web PROTOCOLO HTTP • Protocolo de transferência de hipertexto (Hypertext Transfer Protocol) • Toda comunicação cliente-servidor é baseada no HTTP o Cliente envia uma mensagem para o servidor e espera por uma resposta • É sem estado o Não requer que o servidor mantenha informações sobre seus clientes
  • 17. Sistemas Distribuídos baseados na Web PROTOCOLO HTTP • Utiliza conexões TCP • Sempre que o cliente emite uma requisição uma conexão TCP é estabelecida • Não se preocupa com requisições e respostas perdidas
  • 18. Sistemas Distribuídos baseados na Web HTTP 1.0 E ANTERIORES • Conexão não persistente o Cada requisição requer o estabelecimento de uma conexão separada • Caro estabelecer conexões TCP • É possível estabelecer conexões simultâneas o Utilizado para ocultar a latência causada pelo tempo de estabelecimento de conexão
  • 19. Sistemas Distribuídos baseados na Web HTTP 1.0 E ANTERIORES (a). Utilização de conexões não persistentes
  • 20. Sistemas Distribuídos baseados na Web HTTP 1.1 • Conexão persistente o Não é preciso de uma conexão separada para cada par requisição-resposta • Um cliente pode emitir várias requisições sem esperar a resposta da anterior
  • 21. Sistemas Distribuídos baseados na Web HTTP 1.1 (b). Utilização de conexões persistentes
  • 22. Sistemas Distribuídos baseados na Web MÉTODOS HTTP Operação Descrição Head Requisição para retornar o cabeçalho de um documento Get Requisição para retornar um documento para o cliente Put Requisição para armazenar um documento Post Fornecer dados que devem ser anexados a um documento ou conjunto de documentos Delete Requisição para apagar um documento (c). Operações suportadas pelo HTTP
  • 23. Sistemas Distribuídos baseados na Web MENSAGENS HTTP • Toda comunicação cliente-servidor ocorre por meio de mensagens o São reconhecidas somente mensagens de requisição e resposta Código Frase 200 OK 400 Bad Request (Requisição Inválida) 403 Forbidden (Proibido) 404 Not Found (Não Encontrado) 405 Method Not Allowed (Método Não Permitido) (d). Exemplos de códigos de status das respostas do HTTP
  • 24. Sistemas Distribuídos baseados na Web SOAP • Protocolo simples de acesso a objeto (Simple Object Access Protocol) • Parte da premissa que duas entidades que se comunicam tem muito pouco conhecimento em comum • Possibilita por um meio simples que partes diferentes, que saibam muito pouco uma da outra, consigam se comunicar
  • 25. Sistemas Distribuídos baseados na Web SOAP • Reforça o protocolo HTTP o Utiliza HTTP para a maioria de suas comunicações • As mensagens são em grande parte baseadas em XML • Utilização do XML questionada o nterpretar mensagens XML costuma produzir um sério gargalo de desempenho
  • 26. Sistemas Distribuídos baseados na Web NOMEAÇÃO • Os nomes usados na Web sao denominados identificadores uniformes de recursos (Uniform Resource Identifiers), ou URI • A URL (Uniform Resource Locato), é um URI que identifica um documento pela inclusão de informações sobre como e onde acessá-lo
  • 27. Sistemas Distribuídos baseados na Web NOMEAÇÃO
  • 28. Sistemas Distribuídos baseados na Web NOMEAÇÃO
  • 29. Sistemas Distribuídos baseados na Web SINCRONIZAÇÃO • Existem duas razões para crer que a sincronização em serviços Web não tem sido levada muito a sério: o Em arquiteturas cliente-servidor servidores não se comunicam com servidores e nem clientes com clientes o A Web é considerada como um sistema que, na maioria das vezes, é somente leitura
  • 30. Sistemas Distribuídos baseados na Web SINCRONIZAÇÃO • Porém há uma demanda crescente para fornecer suporte para autoria colaborativa de documentos Web. o WebDAV (Web Distributed Authoring and Versioning) ou autoria e versões distribuídas na Web • O WebDav conta com dois tipos de travas de escrita: a exclusiva e a compartilhada
  • 31. Sistemas Distribuídos baseados na Web WEBDAV • Trava de escrita exclusiva o Somente um cliente tem o poder de travar o documento • Trava de escrita compartilhada o Vários clientes alteram o documento ao mesmo tempo, porém deve existir um cuidado para não ocorrer conflitos escrita-escrita
  • 32. Sistemas Distribuídos baseados na Web CONSISTÊNCIA E REPLICAÇÃO • Tem como objetivo garantir o desempenho e a disponibilidade dos documentos Web. • Problema: Consistência! • Solucão: Utilização de caches! o Implementada através de Caches associadas a Proxy Web.
  • 33. Sistemas Distribuídos baseados na Web CONSISTÊNCIA E REPLICAÇÃO A cache do lado do cliente: • No browser: documento armazenado na cache do browser, de onde será carregado da próxima vez. (configuração feita pelo cliente) Proxy Web: aceita requisições e repassa para servidores → cache compartilhada
  • 34. Sistemas Distribuídos baseados na Web CONSISTÊNCIA E REPLICAÇÃO Tipos de organização de cache: - Cache cooperativa ou distribuída: • Ausência da cache em proxy Web? Verificação em alguns proxies vizinhos! Primordialmente com caches Web que pertencem à mesma organização e que estão na mesma LAN
  • 35. Sistemas Distribuídos baseados na Web CONSISTÊNCIA E REPLICAÇÃO
  • 36. Sistemas Distribuídos baseados na Web CONSISTÊNCIA E REPLICAÇÃO Tipos de organização de cache: - Cache Hierárquica: • Caches posicionadas para uma região ou até mesmo em um país • Caches pesquisadas de maneira hierárquica! Aumentar a latência de resposta • Alta a probabilidade de encontrar cópia de
  • 37. Sistemas Distribuídos baseados na Web FALHAS E SEGURANÇA Uma abordagem para estabelecer um canal seguro na Web é usar a camada de soquetes seguros (Secure Socket Layer – SSL), implementada originalmente pela Netscape: • Uma definição padronizada é denominada protocolo de segurança na camada de transporte (Transport Layer Security – TLS) • Esse protocolo é independente de aplicação.
  • 38. Sistemas Distribuídos baseados na Web FALHAS E SEGURANÇA
  • 39. Sistemas Distribuídos baseados na Web REFERÊNCIAS [1] Tanenbaum, A. S; Sistemas distribuídos - Princípios e Paradigmas; páginas 330-356. [2] Sistemas Distribuídos e a WEB; Acessado em 10 de junho de 2012. http://www.sohand.icmc.usp.br/~rigolin/downloads/sistemasDist ribuidosWeb_Rigolin_20071101.pdf [3] Sistemas Distribuídos na Internet; Acessado em 11 de junho de 2012. http://www.inf.unioeste.br/~marcio/SO/Aula10SistemasDistribuidos.pdf