Definición: ¿Qué significa sistema distribuido?
Un sistema distribuido es cualquier estructura de red que consta de computadoras autónomas que están conectadas mediante un middleware de distribución. Los sistemas distribuidos facilitan compartir diferentes recursos y capacidades, para proporcionar a los usuarios una red coherente única e integrada.
Lo opuesto a un sistema distribuido es un sistema centralizado. Si todos los componentes de un sistema informático residen en una máquina, como era el caso de los primeros mainframes, como las máquinas Von Neumann, no se trata de un sistema distribuido.
Techinfo explica el sistema distribuido
Las características clave de un sistema distribuido son:
- Los componentes del sistema son concurrentes.
- Puede haber múltiples componentes, pero generalmente serán de naturaleza autónoma.
- No se requiere un reloj global en un sistema distribuido.
- En comparación con otros modelos de red, existe una mayor tolerancia a fallas en un modelo distribuido.
- La relación precio / rendimiento es mucho mejor.
Los objetivos clave de un sistema distribuido incluyen:
-
Transparencia: Lograr la imagen de una imagen de sistema único sin ocultar los detalles de ubicación, acceso, migración, concurrencia, falla, reubicación, persistencia y recursos a los usuarios
-
Franqueza: Facilitar la configuración y modificación de la red
-
Fiabilidad: Comparado con un solo sistema, un sistema distribuido debe ser altamente capaz de ser seguro, consistente y tener una alta capacidad de enmascarar errores.
-
Actuación: En comparación con otros modelos, se espera que los modelos distribuidos den un impulso muy deseado al rendimiento.
-
Escalabilidad: Los sistemas distribuidos deben ser escalables con respecto a la geografía, la administración o el tamaño.
Los desafíos para los sistemas distribuidos incluyen:
-
La seguridad es un gran desafío en un entorno distribuido, especialmente cuando se utilizan redes públicas.
-
La tolerancia a fallas puede ser difícil cuando el modelo distribuido se construye sobre la base de componentes poco confiables.
-
La coordinación y el intercambio de recursos pueden resultar difíciles si no existen protocolos o políticas adecuados.
-
Se debe poner en práctica el conocimiento del proceso para los administradores y usuarios del modelo distribuido.
Ejemplos de sistemas distribuidos
En cierto sentido, cualquier sistema que tenga computadoras autónomas trabajando juntas es un sistema distribuido. Internet, las intranets de las empresas y las redes de telecomunicaciones son ejemplos de sistemas distribuidos.
Luego también está la definición de un componente como una máquina. La máquina debe tener dos cosas: primero, debe tener memoria local y, en segundo lugar, debe conectarse a la red. Con estas dos cosas en abundancia en las redes modernas, es fácil configurar sistemas distribuidos para realizar un trabajo sofisticado. Una de las grandes preguntas, sin embargo, es cómo facilitar la construcción de la red, por ejemplo, si usar topologías más tradicionales, o avanzar hacia la virtualización de contenedores o VM, o utilizar sistemas en la nube para abstraer topologías al proveedor.
Tipos de sistemas distribuidos
Se utilizan varios tipos de sistemas distribuidos para crear esas redes que sirven a las personas de las formas mencionadas anteriormente.
Un tipo fundamental de sistema distribuido es un sistema cliente / servidor que divide la funcionalidad en acciones de componentes individuales llamados "clientes" y respuestas de un proveedor en el lado del servidor.
Además, los nuevos tipos de sistemas distribuidos pueden consistir en redes peer-to-peer. Estos son útiles cuando ya existe una malla de componentes en red, por ejemplo, en sistemas autónomos peer-to-peer o sistemas peer-to-peer que utilizan teléfonos inteligentes individuales o dispositivos de teléfono móvil. La idea de una Internet peer-to-peer descentralizada también ha surgido y redes similares están evolucionando con la llegada de la Internet de las cosas y la conectividad que ello conlleva.
El mundo de la virtualización también ha cambiado la forma en que vemos los sistemas distribuidos. No importa cuál sea el modelo, es más probable que los sistemas distribuidos de hoy en día se construyan a partir de componentes virtuales que en bare-metal. Con la partición lógica de los sistemas y la consecuente versatilidad, resulta más fácil poner en marcha sistemas y servicios distribuidos sobre la marcha.