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.
Temas
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