Quão diferente é baixar um arquivo de acessar uma página da web?

4

Eu pergunto porque aqui eu tenho velocidades de download que são como 1MBps, enquanto as páginas da web demoram muito tempo para carregar (definitivamente não 1 MBps).

Eu acho que acessar uma página da Web é basicamente solicitá-la de um servidor e, em seguida, "baixar" a página e renderizá-la.

Estou errado? Qual pode ser a razão pela qual eu tenho tanta diferença nas velocidades de download e de páginas da Web?

    
por Lazer 06.10.2009 / 22:46

6 respostas

2

Algumas páginas da Web têm muitos componentes individuais, e todos eles precisam ser baixados separadamente. Seu navegador lida com tudo isso para você, mas muitas vezes com desempenho reduzido, já que várias conexões diferentes precisam ser feitas e, provavelmente, algumas terão que esperar que outras pessoas terminem. Além disso, as páginas da web geralmente têm dados de vários servidores diferentes (os anúncios provavelmente vêm de seu próprio servidor), e um atraso para qualquer elemento pode desacelerar o todo. Um arquivo é um download simples de um arquivo de um lugar.

Portanto, a largura de banda (a quantidade de dados que você pode baixar em tempo de unidade) é muito importante nos downloads de arquivos. A latência (o tempo extra) é muito mais importante na Web.

    
por 06.10.2009 / 23:27
5

Isso pode ser causado por qualquer / todos os itens a seguir:

  • O servidor está lento.
  • O servidor tem uma conexão lenta.
  • Seu computador está lento. A renderização também leva tempo.
  • Enquanto a conexão permite 1 Mbps de tráfego, tem uma alta latência. Compare isso com um navio. Você pode carregar muitas coisas em um navio, mas levará muito tempo para chegar ao destino.
por 06.10.2009 / 22:49
3

É importante entender como uma página da Web é baixada para entender por que o download de um arquivo de 1 MB pode ser mais rápido do que 256kb que inclui um site.

  1. Se a compactação GZIP estiver presente no servidor da Web para HTML / JavaScript / etc. (mais provável), o seu navegador irá baixar o conteúdo compactado e, em seguida, terá que descompactá-lo.
  2. As imagens podem ter apenas 30 a 40k, mas podem ser decodificadas em muitos megabytes na memória
  3. Se o site tiver vários arquivos externos (CSS / JavaScript / Images), cada um desses arquivos poderá ser baixado em uma conexão separada, como parte de seu navegador que compõe a página
  4. Fazer o download de um arquivo é uma operação básica em HTTP / FTP, que é simplificada. Não há conteúdo para discernir e renderizar
por 06.10.2009 / 23:14
2

Ainda não mencionado - há muito mais em um download típico de página da web atualmente do que o texto que você vê renderizado em seu navegador. Se a página que você está visitando tiver a capacidade de ser editada, ela provavelmente conterá muitos códigos para lidar com isso. O TinyMCE é um popular editor de "Rich Text" para a web. É pequeno, mas não que é minúsculo.

Este é apenas um exemplo, mas esse tipo de coisa incha todos os tipos de páginas da web e pode tornar sua experiência de navegação não o que você espera. Dependendo da pessoa que cria a página da web ou do aplicativo da web, você pode acabar baixando um aplicativo como este se você o usa ou não . É apenas carregado na memória, esperando.

Outro aspecto é psicológico. Quando você seleciona um arquivo para download, espera que ele chegue. Quando você clica em um link para uma página, você está mais inclinado a esperar gratificação instantânea, então, enquanto eu não estou dizendo 'está tudo na sua cabeça', definitivamente há uma expectativa lá.

    
por 07.10.2009 / 05:54
1

Para um download, a conexão é negociada no início da transferência de arquivos e sua velocidade aumenta para o normal. Essa parte da transferência de arquivos é lenta (como às vezes você pode ver na barra de status do navegador da Web. Enviando a solicitação para [site] ... aguardando resposta de [site] e isso leva um tempo). Toda vez que você solicita uma página da Web, essa mesma negociação continua. Também pode ser que o servidor esteja lento para responder a solicitações devido ao carregamento ou o navegador esteja lento para renderizar dados.

    
por 06.10.2009 / 22:49
0

Você não especificou qual navegador estava usando e que tipo de conexão à Internet você tinha.

Se a conexão com a internet é, por exemplo. link de satélite, tem alta largura de banda de download e largura de banda de upload muito lenta e alta latência. Coisa semelhante se aplica à conexão móvel 3G / HSDPA, embora a latência seja menor do que no satélite, mas ainda assim muitas vezes 10 a 30 vezes em comparação com o ADSL ou o cablemodem.

Isso pode piorar ainda mais usando um navegador ruim, como o Internet Explorer, que abre apenas 2-3 conexões simultâneas ao baixar os arquivos do servidor da web. Com conexões do tipo celular, uma conexão HTTP que faz o handshake TCP / IP de 3 vias, um único arquivo pode demorar quase um segundo antes de começar a baixar, agora combine isso com apenas algumas conexões simultâneas do navegador e de repente leva dezenas segundos para baixar uma pequena página da web que tem várias imagens e folhas de estilo e javascripts ligados a ele.

Eu uso o Opera, o que me permite definir as conexões simultâneas para um número muito grande, por exemplo, 32 ou mais. Isso significa que ao abrir um site por meio de um link de alta latência, o navegador leva alguns segundos para fazer os apertos de mão com o servidor e depois descarrega 32 itens simultaneamente e geralmente pode maximizar a largura de banda de download que nunca aconteceria se o navegador baixasse poucos arquivos por vez.

A diferença de velocidade também pode acontecer se o computador estiver lento ou não tiver memória suficiente e o navegador puder atolar a máquina enquanto renderiza a página. Isso pode ser evitado usando um navegador mais rápido / mais leve como o Opera ou, se possível, defina o navegador para não renderizar a página até que tenha baixado todos os elementos necessários. Atualmente, os navegadores tentam renderizar a página o mais rápido possível, o que geralmente faz com que eles reproduzam novamente a página várias vezes e isso pode ser lento em uma máquina mais antiga.

    
por 07.10.2009 / 03:20