Sistemas distribuídos

Cuando se habla de sistemas de información empresarial toman protagonismo los sistemas distribuídos, los cuales poseen varios componentes ubicados en diferentes computadoras, uno de sus principales objetivos es desentralizar el procesamiento de la información y su almacenamiento.

Características

  • Están conectados en red.
  • Comunican sus acciones mediante el paso de mensajes.
  • Concurrencia de los componentes
  • Carencia de un reloj global
  • Fallos independientes de los componentes

Algunos ejemplos

  • Internet
  • Una intranet, que es una porción de una internet gestionada por una organización
  • La comunicación móvil y ubicua

Características de los sitemas distribuídos

Heterogeneidad

variedad y deferencia de ambientes.

  • Redes
  • Hardware de computadoras
  • Sistemas operativos
  • Lenguajes de programación
  • Implementación de diferentes desarrolladores

Extensibilidad

Capacidad que tiene un sistema para ser extendido o reimplementado. Por ejemplo: Que un sistema pueda actualizarse constantemente y que se adapte de manera rápida a los cambios.

Seguridad

Se puede acceder a este tipo de sistemas desde diferentes puntos por lo que puede haber operaciones indeseadas. Algunos ejemplos

  • Confidencialidad: protección contra usuarios no autorizados.
  • Integridad: Protección contra alteración o currupción.
  • Disponibilidad: Mantener el acceso a los recursos.

Escalabilidad

Se dice que un sistema es escalable si conserva su efectividad cuando ocurre un incremento significativo en el número de recursos y usuarios (Internet o Intranets). Por ejemplo que un sistema no se ralentice (se ponga lento) cuando se conecte uno o varios usuarios

Existen dos tipos de escalabilidad

  • Horizontal: Controlada por software, en la actualidad existen tecnologías en la nube que permiten ésto, también se puede hacer mediante contenedores (Docker) u otras tecnologías que permitan aumentar la infraestructura según la demanda de usuarios.
  • Vertical: Controlada por hardware o especifícamente a un solo nodo, por ejemplo: aumentarle la memoria RAM a un servidor para que soporte más peticiones

Tratamiento a fallos

Los sistemas a veces fallan sea por hardware o por software y esto puede generar resultados incorrectos.

  • Se pueden presentar fallos en las redes
  • Un ataque informático
  • Bloqueos constantes una mala construcción
  • Servidores defectuosos u obsoletos

Concurrencia

Existe la posibilidad que más de un usuario quiera acceder a un mismo recurso al tiempo. Por ejemplo el consumo de un consecutivo de facturación, el sistema debe garantizar que sea único.

Transparencia

Se puede definir como la ocultación al usuario y al programador  de aplicaciones de los componentes de un sistema distribuido, de forma tal que se perciba como un todo

  • Integraciones con Servicios web
  • Integraciones con pasarelas de pago (Paypal, PSE, entre otras)

Arquitecuras de sistemas distribuidos

Cliente servidor

computadoras separadas con opción de acceder a recursos compartidos por otra computadora


Servicios proporcionados por múltiples servidores

Diferentes servidores pueden interaccionar entre si y compartir recursos

Servidores proxy y cachés

El propósito es incrementar la disponibilidad del servicio para reducir la carga en la red, ya que almacenan información usada recientemente

Procesos de igual a igual

Todos los procesos desempeñan tareas semejantes, interactuando cooperativamente sin distinción entre clientes y servidores

Microservicios

Se basa en crear aplicaciones modulares, o servicios independientes que se despliegan según se vayan necesitando

Enlaces de referencia