¿Qué es un servidor?

Trabajando día y noche, los servidores hacen posible el internet. Los servidores de YouTube responden cuando pedimos La caída de Edgar y los servidores de Spotify responden cuando deseamos escuchar la canción de moda. Existen varios tipos de servidores: servidores web, de bases de datos, de correo electrónico y muchos más. En este articulo nos concentraremos en los servidores web.

¿Qué es un servidor web? Cada vez que visitamos Facebook, Google, Netflix etc. interactuamos con un servidor web. Los servidores web proporcionan a nuestro navegador de internet los archivos, música y videos que observamos en la red.

Es común escuchar que los servidores de alguna compañía “no responden”,  ó que los servidores de algún banco han sido «hackeados». Los servidores hacen posible nuestra vida en línea. Pero ¿Qué es un servidor en términos simples? La respuesta frecuente solo despierta más preguntas: Un servidor es una computadora. ¿Qué clase de computadora? ¿Tiene alguna diferencia en hardware? ¿Es de alguna marca en especial? ¿Cuál es la diferencia entre una computadora personal o “de escritorio” y una computadora actuando como un servidor? Intentaré aclarar todas estas preguntas.

La diferencia más importante entre un servidor y una computadora de uso cotidiano es simplemente la existencia de un programa en el servidor. Este programa permite a una computadora recibir solicitudes y responder a ellas a través del internet. Si usamos la analogía de un agente dentro de un centro de atención por teléfono, el agente es similar al software que permite usar una computadora como un servidor. Llamamos al centro de atención y (con un poco de suerte) el agente nos proporciona la información que necesitamos. ¿Qué hace el agente cuando no hay nadie en el teléfono? Simplemente espera junto al teléfono a que llame otro cliente. De forma similar, el software de servidor responde cuando se le pide información, y cuando no hay nadie pidiendo información, espera al siguiente cliente.

En lugar de hablar con un servidor como hablaríamos con un agente, nos comunicamos con un servidor a través del protocolo HTTP. Este protocolo define una serie de operaciones estándar que permite a los servidores y a los navegadores realizar y recibir solicitudes web. La dirección IP, similar a un número de teléfono, nos permite comunicarnos con un servidor especifico. Todos los dominios (por ejemplo: google.com) apuntan a una dirección IP en específico, en este caso, algún servidor de Google.

La mayoría de las computadoras de uso cotidiano pueden actuar como servidores sí se instala el software correcto. Existen programas de servidores para Windows y macOS entre muchos otros sistemas operativos. A pesar de que podríamos usar nuestras laptops como servidores y al mismo tiempo ver El Chavo del Ocho, una gran parte de las computadoras usadas como servidores han sido fabricadas con este propósito en específico.

Las computadoras fabricadas para fungir como servidores suelen ser más caras y más poderosas que una computadora de uso cotidiano. Adicionalmente, estas computadoras suelen guardarse en cuartos específicos llamados salas de servidores, o en el caso de compañías con más recursos, en almacenes bajo estricta vigilancia llamados “Data Centers”. Estas computadoras no suelen tener interfaz de usuario (en otras palabras, no tienen pantalla) y se controlan a través del internet (así es, a través de otro tipo de servidor que recibe comandos).

Aunque los servidores son el primer punto de contacto cuando interactuamos con alguna página o aplicación a través del internet, los servidores son solo una parte. Las aplicaciones suelen tener bases de datos y otros programas que dan al servidor el archivo o la funcionalidad que el servidor nos regresará a los usuarios; esto es tema para otro artículo.

Como mencioné antes, existen varios tipos de servidores y en este articulo nos hemos concentrado en los servidores web para explicar generalmente que es un servidor e ilustrar la diferencia entre una computadora de uso cotidiano y una computadora fungiendo como servidor. Espero que su servidor haya aclarado la diferencia.

Por: Mario Mendez

Mario Méndez es un apasionado estudiante de Ciencias de la computación en la Universidad de Manitoba en Canadá. Con vasta experiencia y victorias en competencias de robótica internacional, así como varios Hackathons, Mario vive y respira software. Adicionalmente, Mario cuenta con experiencia profesional en el desarrollo de software en múltiples compañías y como freelance.

Sigue a Mario en https://mariomendez.me