Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Se define como sistema distribuido a un conjunto o grupo de equipos que son independientes
entre sí y que actúan como un único equipo de forma transparente y que tienen como
objetivo la descentralización del procesamiento o el almacenamiento de información.
Concurrencia. Una arquitectura distribuida permite que sea utilizada por todos los
usuarios que interactúan en la red.
Modularidad. Esta característica permite que los sistemas distribuidos sean escalables,
teniendo capacidad para crecer de forma simple y eficiente.
Incrementa la eficacia
Una arquitectura distribuida tiene una mayor tolerancia a los fallos, ya que al caer un nodo la
información se encontrará en otros. Se trata de un sistema mucho más robusto que uno
centralizado debido a esta tolerancia a los fallos sin que se vean afectados los procesos o los
datos.
Al estar distribuida la carga de trabajo en muchos nodos distintos, ante el fallo de uno de ellos
los demás no se verán afectados y el sistema continúa funcionando, lo que permite afirmar
que los sistemas distribuidos son más confiables que los centralizados.
Flexibilidad y escalabilidad
A pesar de las enormes ventajas de los sistemas distribuidos, hay algunos inconvenientes
relacionados con este tipo de arquitecturas como pueden ser:
En comparación con los sistemas centralizados, los distribuidos tienen un mayor nivel de
complejidad a la hora de diseñarlos, configurarlos y gestionarlos de forma eficiente.
Seguridad
Los sistemas distribuidos conectan muchos nodos a través de la red y son muchos los usuarios
que acceden a la misma, lo que lleva aparejado un aumento del riesgo en la integridad y
privacidad de los datos y las comunicaciones.
Precisamente por este motivo es necesario adoptar medidas de seguridad adicionales para
este tipo de arquitectura, de modo que se pueda compensar el riesgo de potenciales ataques,
o en caso de producirse, mitigar sus efectos.
Mayor esfuerzo
Sus particularidades principales son que el cliente comienza las solicitudes o peticiones, por lo
que tiene un papel activo en la comunicación. Además, espera y recibe la respuesta del
servidor y puede conectarse desde varios servidores, es habitual que trabaje a través de una
interfaz gráfica.
El receptor es el servidor, sus características son que al iniciarse espera a que lleguen las
peticiones de los clientes, es un papel pasivo en la comunicación, luego lo procesa y envía
respuesta, además está preparado para un gran número de conexiones de clientes.
Ventajas
Centralización: El servidor fungirá como única fuente de la verdad, lo que impide que
los clientes conserven información desactualizada.
Seguridad: El servidor por lo general está protegido por firewall o subredes que
impiden que los atacantes pueden acceder a la base de datos o los recursos sin pasar
por el servidor.
Fácil de instalar (cliente): El cliente es por lo general una aplicación simple que no
tiene dependencias, por lo que es muy fácil de instalar.
Desventajas
Todo o nada: Si el servidor se cae, todos los clientes quedarán totalmente inoperables.
Protocolos de bajo nivel: Los protocolos más utilizados para establecer comunicación
entre el cliente y el servidor suelen ser de bajo nivel, como Sockets, HTTP, RPC, etc. Lo
que puede implicar un reto para los desarrolladores.
Normalmente trabajamos con arquitecturas Cliente, servidor es por eso que quiero hablar de
arquitectura de objetos distribuidos, los objetos se distribuyen a través de varias
computadoras en una red y se comunican a través de middleware que proporciona un
conjunto de servicios que permiten la comunicación entre objetos y para que estos puedan ser
añadidos o eliminados del sistema. Veamos algunas características del modelo cliente servidor
y modelo de objetos distribuidos, además de sus ventajas.
- Los clientes reciben servicios de los servidores y no de otros clientes; los servidores pueden
actuar como clientes recibiendo servicios de otros servidores, pero sin solicitar servicios de
clientes.
- Los clientes deben conocer los servidores que ofrece cada uno de los servidores y deben
conocer como contactar con cada uno de ellos.
- Sin embargo, limita la flexibilidad del diseñador, que debe decidir donde se proporciona
cada servicio.
- También debe planificar la escalabilidad y proporcionar algún medio para distribuir la carga
sobre los servidores, cuando más clientes se añadan al sistema.
- Una opción superiora es eliminar la distinción entre cliente y servidor y diseñar una
arquitectura de objetos distribuidos.
- Aquí, los componentes del sistema con objetos que proporcionan y requieren un conjunto
de servicios.
- Otros objetos realizan llamadas a estos servicios sin hacer ninguna lógica entre el receptor
de un servicio y el proveedor de un servicio.
- Los objetos pueden distribuirse a través de varias computadoras en una red y comunicarse a
través de middleware.
Las tecnologías ‘peer to peer’ (P2P) hacen referencia a un tipo de arquitectura para la
comunicación entre aplicaciones que permite a individuos comunicarse y compartir
información con otros individuos sin necesidad de un servidor central que facilite la
comunicación.
Ventajas
Desventajas
Presencia de los Firewalls: En ocasiones estos evitan que los usuarios reciban
contenidos y que a su vez los cedan.
Características
Descentralización. Estas redes por definición son descentralizadas y todos los nodos
son iguales. No existen nodos con funciones especiales, y por tanto ningún nodo es
imprescindible para el funcionamiento de la red. En realidad, algunas redes
comúnmente llamadas P2P no cumplen esta característica,
como Napster, EDonkey o BitTorrent.
Los costos están repartidos entre los usuarios. Se comparten o donan recursos a
cambio de recursos. Según la aplicación de la red, los recursos pueden
ser Archivos, Ancho de banda, Ciclos de proceso o Almacenamiento de disco.
La arquitectura de aplicaciones
1. Arquitectura de tres capas: Esta arquitectura divide la aplicación en tres capas: la capa
de presentación (interfaz de usuario), la capa de lógica de negocio y la capa de
almacenamiento de datos. Esto ayuda a separar las preocupaciones y facilita la
escalabilidad y el mantenimiento.
Elegir la arquitectura adecuada depende de factores como los requisitos del proyecto, la
escalabilidad deseada, el equipo de desarrollo y otros aspectos. Es importante tener en cuenta
las ventajas y desventajas de cada enfoque antes de tomar una decisión.
2. Software: Los programas y aplicaciones que permiten a los usuarios trabajar con los
datos, realizar operaciones y obtener información útil. Esto podría abarcar sistemas
operativos, programas de procesamiento de texto, hojas de cálculo, bases de datos y
mucho más.
6. Seguridad: Las medidas para proteger los datos contra accesos no autorizados y
pérdidas. Esto podría involucrar cifrado, autenticación de usuarios, firewalls, entre
otros.
7. Interfaz de Usuario: La forma en que los usuarios interactúan con el sistema, a través
de interfaces gráficas, líneas de comando u otros métodos.
Tiene un uso muy amplio para comercios en internet, especialmente para vender algo. Su
función es permitir un retraso de tiempo entre el momento de presionar el botón de compra
de un producto y cuando la venta sucede realmente. En otras palabras, captura y luego
procesa. Para profundizar más sobre el tema, continúa leyendo.
Se caracteriza por tener un óptimo rendimiento, alta confiabilidad y una gran consistencia al
momento de regular cualquier tipo de transacción. Además, también se relaciona con el
procesamiento de información en tiempo real.
La función principal de cualquier TPS es atrapar, para luego gestionar y también recopilar
todas las transacciones realizadas. Del mismo modo, es el encargado de desarrollar diferentes
documentos que se asocien con las actividades que generalmente se ejecutan en la empresa y
los negocios.
Dicho de otro modo, este sistema de gestión de transacciones, o TPS, permite que los
programadores de aplicaciones enfoquen sus labores en desarrollar un código que beneficie a
la empresa: administrar el procesamiento simultáneo de diferentes operaciones. Por otro lado,
también tiene la ventaja de compartir datos, lo que sean más fáciles de proteger ante la
manipulación.
Existen dos tipos de TPS principales que componen la mayoría de los negocios y empresas
digitales de la actualidad.
En este caso, un TPS reconoce las semejanzas entre diferentes elementos para agruparlos
como un conjunto o como lotes de datos. Tiene la tendencia de generar un retraso de tiempo
dado que analiza varios grupos de información al mismo tiempo, demandando una mayor
potencia informática.
A diferencia del primero, se trata de un protocolo que gestiona transacciones a medida que se
van solicitando. De esa manera, se evitan los retrasos en el procesamiento de información,
dando como resultado una transacción más eficaz.
Una de sus ventajas es que permite que la empresa que emplee este método pueda
identificar y solucionar problemas en las transacciones rápidamente. Gracias a eso, pueden
aumentar sus tiempos de respuesta.
Es un sistema que integra todas las operaciones de una organización. De ese modo, al
definirse las funciones y responsabilidades, el sistema debe tener la capacidad de
mantener esos requerimientos.
Uno de los beneficios que les trae a las empresas que integran este tipo de sistemas es
la reducción de costos. En ese sentido, se encargan de disminuir el número de veces
en las que se hace uso de la información de la base de datos.
Un TPS es un mecanismo de gran ayuda para cualquier empresa, dado que permite funcionar
en cualquier parte del mundo por medio del trabajo remoto. Gracias a eso, pueden explotar
oportunidades en otros mercados, fomentando el crecimiento del negocio en otras áreas de
gran potencial.
Por otro lado, los sistemas de procesamiento de transacciones son útiles para las tareas
simultáneas a larga escala, con la capacidad de completarlas sin retrasos ni errores. En
definitiva, un TPS es la herramienta ideal para administrar y controlar las labores rutinarias de
una organización, empresa o negocio.