¿Cuáles son los componentes de un Servidor Web?

Si bien podríamos simplemente centrarnos en cómo crear páginas web y sitios web, nada de esto es posible sin los componentes de hardware y software subyacentes que respaldan las páginas que creamos; Examinar qué son estos componentes y cómo interactúan nos ayuda a comprender de qué es capaz nuestros componentes de un Servidor Web.

El hardware, un sistema operativo y un servidor http comprenden las necesidades básicas.

La adición de una base de datos y un lenguaje de secuencias de comandos amplía las capacidades de un servidor y también se utilizan en la mayoría de los componentes de un Servidor Web.

 

Hardware

La mención de frases como centro de datos, proveedor de alojamiento o incluso empresas de renombre como Microsoft y Google puede invocar imágenes mentales de salas grandes y estériles llenas de estantes altos de hardware con luces parpadeantes y un laberinto de cables.

Aquellos más familiarizados con estas habitaciones también conocerán el frío que resulta de la atmósfera con mucho aire acondicionado y el zumbido de los ventiladores que normalmente los acompañan.

Sin embargo, esto no es un requisito ni una descripción precisa de una gran cantidad de servidores conectados a Internet.

Con la adición del software adecuado (asumiendo que está consumiendo este texto digitalmente), el dispositivo que está usando para leer esto podría convertirse en un servidor conectado a Internet.

Si bien no satisfaría las demandas de dominios como Amazon.com o MSN.com,

Aunque hemos llegado a este punto, es difícil olvidar la imagen mental evocada por los pensamientos del centro de datos.

En el modelo "tradicional" actual, los servidores delgados y físicamente compactos se apilan verticalmente.

Estos se conocen como hardware de montaje en rack.

Hoy en día, muchos sistemas de montaje en rack contienen hardware similar al que tenemos en nuestros equipos de escritorio, a pesar de la diferencia de apariencia.

Varias empresas, incluidas Google, Yahoo y Facebook, buscan reinventar este concepto.

Google, por ejemplo, ya ha utilizado servidores personalizados en partes de su red en un esfuerzo por mejorar la eficiencia y reducir los costos.

Una implementación que han probado demostró ser tan eficiente que pudieron eliminar las grandes unidades de respaldo de energía colocando una batería de 9 voltios en cada servidor.

Dándole suficiente energía de emergencia para seguir funcionando hasta que la fuente de energía de respaldo del edificio pudiera funcionar.

También han experimentado con métodos de enfriamiento alternativos como usar agua de estanques de retención o ubicar centros de datos donde puedan aprovechar los recursos naturales como el agua de mar para enfriar o el viento y la energía solar para obtener energía.

incluso los dispositivos pequeños y de baja potencia están encontrando demanda como servidores en parte para habilitar el Internet de las cosas.

Los dispositivos como la Raspberry Pi y una explosión de productos similares como los "sticks de Android" se pueden comprar por tan solo $ 88.000 pesos Colombianos.

Estos pequeños dispositivos de "potencia suficiente" se utilizan para conectar datos del entorno u otros dispositivos a Internet, dejando atrás el centro de datos y viviendo en la fuente de los datos en sí.

 

Software

Un servidor web típico de hoy contiene cuatro elementos además del hardware físico.

Estos son el sistema operativo, el servidor web, una base de datos y un lenguaje de programación.

Una de las combinaciones más populares de estos sistemas se ha abreviado como LAMP, que significa Linux, Apache, MySQL y PHP, nombrados en el mismo orden.

Hay muchas combinaciones de soluciones que cumplen con estas características, lo que da como resultado una serie de variaciones del acrónimo, como WAMP para Windows, Apache, MySQL, PHP o MAMP.

Idénticas a excepción de Mac o, legítimamente, un sistema operativo desarrollado por Macintosh.

Entre la plétora de combinaciones, prevalece el uso de LAMP como la referencia a un servidor con este tipo de servicios.

Todo lo que se requiere en última instancia para transmitir páginas estáticas a un usuario final es el sistema operativo y el servidor HTTP, la primera mitad del acrónimo WAMP.

El equilibrio agrega la capacidad de interactividad y para que la información cambie según el resultado de las interacciones del usuario.

Sistema operativo: Linux

Su sistema operativo es lo que le permite interactuar con las aplicaciones y el hardware que componen su computador.

Facilita la asignación de recursos a sus aplicaciones y la comunicación entre hardware y software.

Normalmente, los sistemas operativos para servidores se dividen en tres categorías, basados ​​en Linux, basados ​​en Windows y basados ​​en Mac.

Dentro de cada una de estas categorías hay más opciones, como varias versiones de los sistemas operativos Mac y Windows, y la amplia variedad de sistemas operativos Linux.

Utilizaremos Linux, la opción predominante.

Desarrollado por Linus Torvalds a principios de la década de 1990 cuando era estudiante, Linux fue creado para que Linus pudiera acceder a los sistemas UNIX en su universidad sin depender de un sistema operativo.

A medida que su proyecto se hizo más sólido, decidió compartirlo con otros, buscando aportes pero creyendo que seguiría siendo un esfuerzo más personal.

Lo que no podría haber predicho fue la comunidad que se uniría y participaría para ayudar a darle forma a lo que es hoy.

Como base de una gran cantidad de sistemas operativos basados ​​en Linux (o "variantes" de Linux), el núcleo de Linux se puede encontrar en todo el mundo, incluso en las salas de servidores de sus competidores como Microsoft.

Servidor HTTP: Apache

Apache es un servidor web de código abierto desarrollado originalmente para sistemas UNIX.

Ahora compatible con la mayoría de las plataformas, incluidas UNIX, Linux, Windows y Mac, Apache es una de las aplicaciones de servidor más utilizadas.

Desarrollado por primera vez en 1995, Apache sigue un enfoque de código abierto similar al de Linux, lo que permite a los usuarios expandir el software y contribuir a la comunidad de usuarios.

El grupo de usuarios de Apache desarrolló The Apache Foundation, que mantiene una biblioteca de soluciones para servicios web.

En un servidor web, Apache actúa como el componente HTTP, que compila los resultados de lenguajes de programación, bases de datos y archivos HTML para generar contenido que se envía al usuario.

Apache (o cualquier servicio web) rastreará qué archivos en el servidor pertenecen y no pertenecen al sitio web, y también controla qué opciones están disponibles para el usuario final a través de sus archivos de configuración.

Apache y otros tipos de servidores HTTP nos permiten compartir nuestras páginas web, scripts y archivos con nuestros usuarios finales.

Cualquier resultado de nuestra base de datos y lenguajes de scripting se convierte en un resultado HTML que el navegador del cliente muestra como nuestra página web.

Si bien podemos ver archivos HTML y JavaScript en un computador que no es un servidor web, necesitamos un servidor http para verlos como un destino en una red.

Archivos de configuración

Cuando creamos un nuevo sistema, es posible que la configuración no sea exactamente como la queremos, o puede llegar el momento en que queramos agregar, eliminar o cambiar algo sobre nuestro servidor.

Para ello, necesitaremos editar los archivos de configuración que controlan las diferentes piezas de nuestro sistema.

Nuestro archivo de configuración de servidor web real se llama httpd.conf. Para la configuración de PHP, necesitamos referirnos a php.ini, y para MySQL nos referimos a my.cnf.

Estos archivos pueden estar ubicados en diferentes lugares según el sistema operativo y la versión en uso, por lo que es mejor usar las herramientas de búsqueda de archivos de su sistema para encontrar dónde están en su máquina.

Los archivos de configuración (o configuración) suelen ser un archivo de formato de texto sin formato con una configuración en cada línea con comentarios cerca de cada valor que describen el uso de la configuración.

Estos archivos también usarán el mismo delimitador de comentarios para sus notas para habilitar o deshabilitar configuraciones individuales.

Normalmente, el delimitador utilizado es un punto y coma; o signo de libra #.

Si desea cambiar la configuración de su servidor, como el puerto en el que escucha, en qué carpeta busca archivos, su nombre u otras características relacionadas, busque el archivo httpd.conf.

Desde el archivo php.in puede controlar elementos como qué módulos están instalados y habilitados para su sistema, cuántos scripts de datos pueden consumir y más.

De manera similar, su archivo de configuración de MySQL determina en qué puerto escucha, con qué usuario se ejecuta en su servidor, cuáles son las credenciales de su cuenta de administrador y más.

Los cambios en estos archivos generalmente requieren que reinicie su servidor web (en nuestro caso, para cambios de Apache o PHP), o al menos el servicio que está cambiando (en nuestro caso, cambios de MySQL).

Esto se puede hacer usando el panel de control si está usando un programa combinado como Wamp 2, o usando las herramientas de servicio de su sistema operativo o usando los comandos del sistema en un símbolo del sistema.

Reiniciar Wamp 2 en un sistema operativo GUI como Windows se puede hacer haciendo clic derecho en el icono de Wamp en la bandeja.

En un servidor Cent OS, se puede lograr el mismo efecto escribiendo "service httpd restart".

Si todo lo demás falla, siempre puede reiniciar físicamente la máquina (lo que se denomina "rebote"), pero esto es algo que debe evitar en un sistema en vivo, ya que provocará un período de inactividad mucho más prolongado.

Si usa paquetes de instalación, o un instalador combinado como Wamp 2, probablemente se las arreglará inicialmente sin hacer ningún cambio en estos archivos.

Sin embargo, los instaladores binarios no sabrán dónde o cómo realizar cambios en los archivos de configuración y deberá seguir las instrucciones para editar estos archivos a mano para integrar todos sus elementos.

Lea También: El Mantenimiento de las Redes Informáticas

No hay comentarios

Leave a reply