¿Cuáles son las diferencias específicas entre un servidor Windows y un servidor LAMP, y cuál debería conocer?

¿Cuáles son las diferencias específicas entre un servidor Windows y un servidor LAMP, y cuál debería conocer?

Durante los últimos 6 u 8 meses he estado trabajando mucho con .NET. Aprendí sobre servicios web (aunque no soy un experto) y recientemente he desarrollado un gran interés en los servidores web y realmente quiero configurar los míos propios. Tengo una computadora de escritorio vieja con Windows Server 2008 ejecutándose, pero vivo en un dormitorio y no tengo una IP estática. Sé que hay soluciones para eso, pero primero quiero entender mejor qué es lo que estoy haciendo. Lo que me gustaría configurar es un servidor multipropósito que pueda usar para alojar sitios web/aplicaciones de Android.

He oído que los servidores LAMP son más personalizables (por lo tanto, generalmente más eficientes) que los servidores Windows/IIS. ¿Es esto cierto? Dado que Apache es tan omnipresente, realmente me gustaría aprender más sobre cómo funciona y cómo usarlo. Lo único que me pone nervioso al tomar la ruta LAMP es la línea de comandos (tengo 19 años y crecí con GUI). He trabajado con la línea de comandos de Unix antes y me siento cómodo con los comandos básicos/la navegación del sistema de archivos, pero configurar algo como un servidor web desde una línea de comandos me hace volverme loco. Puedo obtener copias gratuitas de casi cualquier software de Microsoft (me encanta ser estudiante), pero no quiero sacrificar mi comprensión de mi servidor web únicamente a cambio de una GUI.

¿Alguna sugerencia sobre qué ruta tomar? Mi preocupación al utilizar Windows es que nunca entendería realmente los servidores web porque todo siempre estaría encapsulado y simplificado para mí. También quiero saber qué implica un servidor fantástico y eficiente. ¿Alguna sugerencia/libros/recomendaciones de recursos?

Respuesta1

La elección de la plataforma (Windows IIS o Linux y Apache) depende en gran medida de sus requisitos. En este momento, tus requisitos son básicamente inexistentes ya que sólo estás configurando un servidor web para jugar. Elija la pila de tecnología que será más relevante para sus objetivos a largo plazo (y dado que ha trabajado con .NET, probablemente utilice Windows IIS) y úsela, profundice en ella y aprenda.

No hay nada inherente en el uso de una pila LAMP que lo convierta inherentemente en un superadministrador (tal vez un superadministrador con respecto a LAMP...), ni hay nada inherente en el uso de un IIS que lo convierta en "never really understand web servers because everything would always be encapsulated and simplified for me"...

Cuánto desea aprender y qué tan bien desea comprender una tecnología determinada depende en gran medida de su interés y motivación, no de la tecnología en sí.

Respuesta2

¿Quieres configurar un servidor web? Hazlo. No tiene que ser un estudio de un año de duración, puede tener IIS ejecutándose en unos minutos y una instalación de Linux con la configuración de Apache en una máquina virtual en una o dos horas.

Configurar Apache desde la línea de comandos significa aproximadamente "yum install apache" seguido de "usar un editor de texto para editar /etc/httpd/httpd.conf" (específico de la distribución de Linux). No es una gran cadena de comandos de consola para realizar muchos cambios de configuración.

He oído que los servidores LAMP son más personalizables (por lo tanto, normalmente más eficientes)

Eso no sigue. Más personalizable, sí, más eficiente, depende completamente de lo que entiendas por "eficiente". La P en LAMP normalmente se refiere a "PHP, Perl, Python, (Ruby)" y se enfrentará a algunas discusiones si afirma que son más eficientes que IIS/ASP.Net.

Si desea un servidor web liviano (¿rápido, "eficiente"?), valdría más la pena echarle un vistazo a nginx.

¿Alguna sugerencia sobre qué ruta tomar? Mi preocupación al utilizar Windows es que nunca entendería realmente los servidores web porque todo siempre estaría encapsulado y simplificado para mí.

¿Nadie sabe cómo funciona IIS?

También quiero saber qué implica un servidor fantástico y eficiente.

StackOverflow (Serverfault.com y amigos) se ejecuta en Windows/ASP.Net/SQL Server, y ha habido publicaciones interesantes sobre cómo lo hacen en la web (p. ej.http://highscalability.com/blog/2009/8/5/stack-overflow-architecture.html)

Respuesta3

Dependiendo del nivel de comprensión que esté buscando, hay varias formas de solucionar este problema.

  • Para una comprensión completamente profunda, explore el código. Obviamente necesitas algunas habilidades serias para poder hacer tal cosa.

  • De lo contrario, la mejor manera de aprender es leer y jugar. Configure sitios web en diferentes configuraciones. Ofrezca hospedar el sitio web de algún amigo de forma gratuita (solo asegúrese de que sepan que es experimental), albergue algunos de sus propios sitios. Pruebe diferentes funciones. Lee los documentos en línea. Tome un libro al azar en la biblioteca sobre el tema para leerlo durante el viaje.

Además, el servidor web de Windows también tiene algunas funciones bastante avanzadas. Pensar que LAMP es necesariamente más personalizable por un amplio margen no siempre es cierto. Yo también soy una persona de Linux, pero he visto a gente de Windows hacer cosas bastante avanzadas con IIS. Tener una GUI acaba con la impresión de 1337-command-line-lod-skills, pero recuerda que puede que solo sea una impresión.

Solo como ejemplo, AFAIK, la red Stack Exchange (por lo que se incluye este sitio) se ejecuta en servidores web de Windows. Eso demuestra que puedes hacer grandes cosas con Windows.

Respuesta4

Si aprende y usa LAMP, comprenderá varias tecnologías mejor que si aprende Windows + IIS.

información relacionada