Quais são as diferenças específicas entre um servidor Windows e um servidor LAMP e sobre quais devo aprender?

Quais são as diferenças específicas entre um servidor Windows e um servidor LAMP e sobre quais devo aprender?

Nos últimos 6 ou 8 meses tenho trabalhado muito com .NET. Aprendi sobre serviços web (embora não seja especialista) e recentemente desenvolvi um grande interesse em servidores web e realmente quero configurar o meu próprio. Tenho um computador desktop antigo com Windows Server 2008 em execução, mas moro em um dormitório e não tenho um IP estático. Sei que existem soluções para isso, mas quero entender melhor o que estou fazendo primeiro. O que eu gostaria de configurar é um servidor multifuncional que possa usar para hospedar sites/aplicativos Android.

Ouvi dizer que os servidores LAMP são mais personalizáveis ​​(portanto, geralmente mais eficientes) do que os servidores Windows/IIS. Isso é verdade? Como o Apache é tão onipresente, eu realmente gostaria de aprender mais sobre como ele funciona e como usá-lo. A única coisa que me deixa nervoso ao seguir a rota LAMP é a linha de comando (tenho 19 anos e fui criado em GUIs). Já trabalhei com a linha de comando unix antes e estou confortável com comandos básicos/navegação no sistema de arquivos, mas configurar algo como um servidor web a partir de uma linha de comando me faz ficar todo nervoso. Posso obter cópias gratuitas de quase qualquer software da Microsoft (adoro ser estudante), mas não quero sacrificar minha compreensão do meu servidor web apenas em troca de uma GUI.

Alguma sugestão sobre qual caminho seguir? Minha preocupação em mudar para o Windows é que eu nunca entenderia realmente os servidores web porque tudo sempre seria encapsulado e simplificado para mim. Também quero saber o que acontece em um servidor incrível e eficiente. Alguma sugestão/livro/recomendação de recursos?

Responder1

A escolha da plataforma (Windows IIS ou Linux e Apache) é amplamente determinada pelos seus requisitos. No momento, seus requisitos são basicamente inexistentes, pois você está apenas configurando um servidor web para brincar. Escolha a pilha de tecnologia que será mais relevante para seus objetivos de longo prazo (e como você trabalhou com o .NET, provavelmente será o Windows IIS) e use-a, aprofunde-se e aprenda.

Não há nada sobre o uso de uma pilha LAMP que irá inerentemente transformá-lo em um superadministrador (talvez um superadministrador em relação ao LAMP...), nem há nada inerente ao uso de um IIS que o tornará "never really understand web servers because everything would always be encapsulated and simplified for me".

O quanto você deseja aprender e quão bem deseja compreender uma determinada tecnologia é em grande parte ditado pelo seu interesse e motivação, e não pela tecnologia em si.

Responder2

Você deseja configurar um servidor web? Faça isso. Não precisa ser um estudo de um ano, você pode ter o IIS rodando em alguns minutos e instalar o Linux com configuração do Apache em uma máquina virtual em uma ou duas horas.

Configurar o Apache a partir da linha de comando significa aproximadamente "yum install apache" seguido de "use um editor de texto para editar /etc/httpd/httpd.conf" (específico da distribuição Linux). Não é uma enorme cadeia de comandos de console para fazer muitas alterações nas configurações.

Ouvi dizer que os servidores LAMP são mais personalizáveis ​​(portanto, geralmente mais eficientes)

Isso não acontece. Mais personalizável, sim, mais eficiente, depende completamente do que você entende por "eficiente". O P em LAMP normalmente se refere a "PHP, Perl, Python, (Ruby)" e você enfrentará algumas discussões se afirmar que eles são mais eficientes que IIS/ASP.Net.

Se você deseja um servidor web leve (rápido. "eficiente"?), Vale mais a pena dar uma olhada no nginx.

Alguma sugestão sobre qual caminho seguir? Minha preocupação em mudar para o Windows é que eu nunca entenderia realmente os servidores web porque tudo sempre seria encapsulado e simplificado para mim.

O quê, ninguém sabe como funciona o IIS?

Também quero saber o que acontece em um servidor incrível e eficiente.

StackOverflow (Serverfault.com e amigos) roda em Windows/ASP.Net/SQL Server, e tem havido postagens interessantes sobre como eles fazem isso na web (por exemplohttp://highscalability.com/blog/2009/8/5/stack-overflow-architecture.html)

Responder3

Dependendo do nível de compreensão que você procura, existem várias maneiras de contornar isso.

  • Para uma compreensão totalmente aprofundada, analise o código. Obviamente, você precisa de algumas habilidades sérias para poder fazer tal coisa.

  • Caso contrário, a melhor maneira de aprender é lendo e brincando. Configure sites em diferentes configurações. Ofereça-se para hospedar o site de algum amigo gratuitamente (apenas certifique-se de que ele saiba que é experimental), hospede alguns de seus próprios sites. Experimente recursos diferentes. Lê os documentos online. Pegue um livro aleatório na biblioteca sobre o assunto para ler no trajeto.

Além disso, o servidor web Windows também possui alguns recursos bastante avançados. Pensar que o LAMP é necessariamente mais personalizável por uma grande margem nem sempre é verdade. Eu também adoro Linux, mas já vi pessoas do Windows fazerem coisas bastante avançadas com o IIS. Ter uma GUI mata a impressão de 1337-command-line-mad-skills, mas lembre-se de que pode ser apenas uma impressão.

Apenas como exemplo, AFAIK, a rede Stack Exchange (incluindo este site) é executada em servidores web Windows. Isso mostra que você pode fazer grandes coisas com o Windows.

Responder4

Se você aprender e usar LAMP, entenderá várias tecnologias melhor do que aprender Windows + IIS.

informação relacionada