¿Qué es una aplicación distribuida?
Una aplicación distribuida es un programa destinado a ejecutarse en varias computadoras a la vez y puede almacenarse en un servidor o en la computación en la nube. Esto se usa comúnmente dentro de una red que tiene una relación cliente-servidor en la que una computadora cliente accede a un programa desde el servidor y el servidor realiza todo el procesamiento. Cada computadora que accede a la aplicación normalmente está hecha para un propósito específico. Si bien hay muchas aplicaciones distribuidas diferentes, las más comunes son programas generales, software de colaboración, sistemas en tiempo real y sistemas computacionales. El uso de una aplicación distribuida generalmente es beneficioso, pero esto puede plantear un problema si el servidor es débil o lento.
Los sistemas de aplicaciones distribuidas se pueden usar en muchos tipos de red diferentes, pero con mayor frecuencia se ven en redes cliente-servidor. En este tipo de red, la computadora cliente, o la computadora que usan las personas, accede a los programas y la información desde el servidor. La aplicación no solo se usa desde el servidor, sino que el servidor es responsable de hacer todo el procesamiento para que el programa funcione. La computación en la nube también se puede utilizar para esto, en cuyo caso el programa se almacena en un servidor en la nube y las computadoras cliente acceden al programa.
Si bien cada computadora o persona puede usar la aplicación distribuida para fines generales, la computadora o persona normalmente está especializada o tiene instrucciones para realizar una tarea específica. Por ejemplo, se puede usar u optimizar una computadora para crear una imagen, mientras que otra se usa para texto. El usuario también puede recibir instrucciones para realizar una determinada tarea, en lugar de solo realizar tareas genéricas.
Existen muchos tipos diferentes de aplicaciones distribuidas, pero hay cuatro categorías principales. Los programas generales son programas comunes que se encuentran en una computadora, solo están diseñados para funcionar en varias computadoras a la vez. El software de colaboración está hecho para que varias personas puedan trabajar en un solo proyecto al mismo tiempo; cada usuario generalmente trabaja en una sección diferente del proyecto. Los sistemas en tiempo real son programas de chat y tickets en los que los usuarios responden las preguntas de los clientes en línea. Los programas computacionales están hechos para procesar código, y el uso de varias computadoras a la vez optimiza y acelera el procesamiento.
El uso de una aplicación distribuida es generalmente beneficioso, ya que facilita el acceso y uso de un programa para muchos usuarios a la vez, aunque puede haber un problema si el servidor no es fuerte. El servidor es comúnmente responsable de realizar el procesamiento, por lo que esto ejerce mucha presión sobre el servidor. Si el servidor es débil o lento, esto puede provocar retrasos o problemas más graves en las computadoras que acceden al programa.