hospedagem-de-sites


Em 1989, Tim Berners-Lee propôs um novo projeto para o CERN empregador, com o objetivo de facilitar o intercâmbio de informações entre cientistas usando um sistema de hipertexto. O projeto resultou em Berners-Lee escrevendo dois programas em 1990:

    Um navegador chamado WorldWideWeb.
    primeiro servidor web do mundo, mais tarde conhecido como CERN httpd, que decorreu em NeXTSTEP

Entre 1991 e 1994,  a hospedagem de sites simplicidade e eficácia das tecnologias primeiros usados ​​para dados de surf e de câmbio através da World Wide Web ajudou a portá-las para muitos sistemas operacionais diferentes e espalhar seu uso entre as organizações científicas e universidades, e em seguida para a indústria.

Em 1994, Tim Berners-Lee decidiu constituir a World Wide Web Consortium (W3C) para regular o desenvolvimento das muitas tecnologias envolvidas (HTTP, HTML, etc.) através de um processo de normalização.
Características comuns

    Virtual hospedagem para servir muitos sites usando um endereço IP
    suporte de arquivo grande para ser capaz de servir arquivos  de hospedagem cujo tamanho é maior do que 2 GB em 32 bits OS
    Largura de banda de estrangulamento para limitar a velocidade de resposta, de modo a não saturar a rede e para ser capaz de servir mais clientes
    scripts do lado do servidor para gerar páginas web dinâmicas, ainda mantendo implementações do servidor web e do Web site separados uns dos outros

tradução path

Os servidores Web são capazes de mapear o componente de caminho de um Uniform Resource Locator (URL) em:

    Um recurso do sistema de arquivos local (para solicitações estáticas)
    Um nome de programa interno ou externo (para solicitações dinâmicas)

Para um pedido estática o caminho de URL especificado pelo cliente é relativo ao diretório raiz do servidor web.

Considere o seguinte URL como seria solicitado por um cliente:

http://www.example.com/

agente de usuário do cliente irá traduzi-lo em uma conexão com www.example.com com o seguinte HTTP 1.1 pedido:

GET /path/file.html HTTP / 1.1
Anfitrião: www.example.com

O servidor web em www.example.com irá anexar o caminho dado para o caminho do seu diretório raiz. Em um servidor Apache, este é comumente / home / www (em máquinas Unix, normalmente / var / www). O resultado é o recurso do sistema de arquivos local:

/home/www/path/file.html

O servidor web, em seguida, lê o arquivo, se existir, e envia uma resposta para o navegador web do cliente. A resposta irá descrever o conteúdo do arquivo e contêm o próprio arquivo ou uma mensagem de erro irá retornar dizendo que o arquivo não existe ou não está disponível.
Kernel-modo e do modo de usuário servidores web

Um servidor web pode estar incorporado no kernel do sistema operacional, ou no espaço do usuário (como outras aplicações regulares).

Os servidores Web que funcionam no modo de usuário tem que perguntar o sistema de permissão para usar mais memória ou mais recursos da CPU. Não só essas solicitações para o kernel levar tempo, mas eles nem sempre estão satisfeitos porque os recursos sistema reserva para o seu próprio uso e tem a responsabilidade de compartilhar recursos de hardware com todos os outros aplicativos em execução. Executando no modo de usuário também pode significar cópias tampão inúteis que são outra desvantagem para servidores web de modo de usuário.
limites de carga

Um servidor web (programa) definiu os limites de carga, porque ele pode lidar com apenas um número limitado de conexões simultâneas de cliente (geralmente entre 2 e 80.000, por padrão entre 500 e 1.000) por cada endereço IP (e porta TCP) e só pode servir um determinado número máximo de solicitações por segundo (RPS, também conhecidas como consultas por segundo ou QPS), dependendo:

    suas próprias configurações,
    o tipo de solicitação HTTP,
    se o conteúdo é estático ou dinâmico,
    se o conteúdo é armazenado em cache, e
    as limitações de hardware e software do sistema operacional do computador no qual o servidor web é executado.

Quando um servidor web está próximo ou superior a seu limite, deixa de responder.
Causas de sobrecarga

A qualquer momento os servidores web pode ser sobrecarregado devido a:

    O excesso de tráfego na web legítimo. Milhares ou mesmo milhões de clientes conectados à web site em um curto intervalo de tempo, por exemplo, o efeito Slashdot;
    Ataques distribuídos de negação de serviço. Um ataque de negação de serviço (ataque DoS) ou distribuído ataque de negação de serviço (DDoS ataque) é uma tentativa de tornar um computador ou rede de recursos disponível para os seus usuários;
    worms de computador que às vezes causam tráfego anormal por causa de milhões de computadores infectados (não coordenados entre eles)
    vírus XSS pode causar alto tráfego por causa de milhões de navegadores infectados e / ou servidores web;
    Internet bots de tráfego não filtrada / limitado em grandes sites com muito poucos recursos (largura de banda, etc.);
    Internet (rede) lentidão, de modo que os pedidos de clientes são servidos mais lentamente e o número de ligações aumenta tanto que os limites de servidor são alcançados;
    servidores Web (computadores) indisponibilidade parcial. Isso pode acontecer por causa da manutenção necessária ou urgente ou atualização, falhas de hardware ou software, back-end (por exemplo, banco de dados) falhas, etc .; Nestes casos, os restantes servidores web ficar muito tráfego e ficar sobrecarregada.

Os sintomas de sobrecarga

Os sintomas de um servidor web sobrecarregado são:

    Os pedidos são servidos com atrasos (possivelmente longa) (de 1 segundo a algumas centenas de segundos).
    O servidor da web retorna um código de erro HTTP, tais como 500, 502, 503, 504, 408, 404 ou até mesmo, o que é inadequado para uma condição de sobrecarga.
    O servidor da Weblocal hospedagem de sites na web recusa ou redefine (interrompe) conexões TCP antes de retornar qualquer conteúdo.
    Em casos muito raros, o servidor web retorna apenas uma parte do conteúdo solicitado. Este comportamento pode ser considerado um erro, mesmo que normalmente surge como um sintoma de sobrecarga.

técnicas de anti-sobrecarga

Para superar parcialmente acima dos limites de carga média e para evitar a sobrecarga, os sites mais populares da web usam técnicas comuns como:

    Gerenciamento de tráfego de rede, usando:
        Firewalls para bloquear o tráfego indesejado proveniente de fontes IP ruim ou ter padrões ruins
        gestores de tráfego HTTP a cair, redirecionar ou reescrever os pedidos tendo padrões HTTP ruins
        gerenciamento de largura de banda e traffic shaping, para alisar os picos de uso da rede
    A implantação de técnicas de cache web
    Usando diferentes nomes de domínio para servir conteúdo diferente (estático e dinâmico) por servidores web separados, i .:
        http://images.example.com
        http://www.example.com
    O uso de nomes e / ou computadores diferentes domínios para separar arquivos grandes de pequenas e médias arquivos; a idéia é ser capaz de totalmente cache de arquivos de pequeno e médio porte e para servir de forma eficiente (mais 10-1000 MB) grandes ou enormes arquivos usando configurações diferentes
    Usando muitos servidores de internet (programas) por computador, cada um ligado a sua própria placa de rede e endereço IP
    Usando muitos servidores de internet (computadores) que são agrupados atrás de um balanceador de carga de modo que eles agem ou são vistos como um servidor web grande
    Adicionando mais recursos de hardware (ou seja, RAM, discos) para cada computador
    Ajustando os parâmetros mínimos de recursos de hardware e de uso
    Usando programas de computador mais eficientes para servidores web, etc.
    A utilização de outras soluções alternativas, especialmente se o conteúdo dinâmico está envolvido