Quais são as vantagens de usar um servidor Web dedicado? [fechadas]

0

Para elaborar, quais são as vantagens de usar um servidor web dedicado (por exemplo, lighttpd ou nginx) e programas em execução (ou seja, Swift / Python), conforme indicado pelo servidor web?

Especificamente, como isso se compara a simplesmente executar uma estrutura da Web (por exemplo, Perfect / Flask) e usar seu roteamento inerente?

    
por Brandon Bradley 25.08.2016 / 01:56

1 resposta

1

Esta é uma pergunta padrão de "arquitetura de segurança da Web".

Um aplicativo típico de três camadas terá

  1. camada da Web
  2. camada de aplicativo
  3. Camada de banco de dados (ou outro back-end).

A ideia é ajudar a segregar os deveres.

Assim, a "camada web" é o ponto de terminação inicial de todo o tráfego de entrada. Você pode ter seu material SSL feito aqui. Neste ponto, você pode injetar coisas como "Firewalls de aplicativos da Web", que podem inspecionar o tráfego de entrada em busca de itens que se assemelham a ataques de injeção de SQL ou ataques de passagem de caminho e assim por diante.

A vantagem de terminar aqui é que os serviços front-end, como o apache ou o nginx ou o lighttpd, são dedicados ao tratamento de tráfego não autorizado, ao registro de solicitações incorretas, à mais "segurança". Alguém surge com uma nova maneira de atacar os servidores da Web (fragmentação de dados com um conjunto de bits TCP inválido?) E você terá certeza de que os principais servidores da Web serão corrigidos; o seu framework web pode não estar tão no topo das coisas.

Apenas o tráfego "limpo" é passado para a camada de aplicativo (essa comunicação também pode ser HTTP, mas de uma fonte mais confiável). E seu aplicativo pode conversar com o backend.

Agora, idealmente, essas camadas também estariam em servidores diferentes com regras de roteamento de rede, de modo que o "servidor de aplicativos" não possa ser acessado de forma alguma a partir do serviço de solicitação externo. A única maneira que o tráfego pode chegar ao seu servidor de aplicativos é por meio do servidor Web front-end, mesmo em uma camada TCP mais baixa. Mas mesmo sem isso, você pode ganhar algumas vantagens de segurança.

Vantagem secundária significa que seu serviço front-end pode ser um proxy HA, distribuindo carga para vários servidores de aplicativos de back-end.

Vantagens terciárias permitirão que você forneça arquivos estáticos (por exemplo, imagens, CSS, javascript) do servidor Web front-end e apenas o material pesado específico do aplicativo será passado para o seu aplicativo. Você pode adicionar camadas de cache e assim por diante. Pode haver benefícios de desempenho aqui.

Assim, do ponto de vista da empresa, há muitos bons motivos para separá-los. Mas requer mais trabalho para configurar e configurar.

Quão longe você quer ir é uma preferência pessoal.

    
por 25.08.2016 / 02:28