aplicaciones distribuidas 1.4 Problemas comunes en el desarrollo y uso de aplicaciones 1.3 Escenarios de utilización de las aplicaciones distribuidas. Algunas de las aplicaciones distribuidas más conocidas son remote login, correo electrónico, navegación Web, streaming, telefonía IP y compartición de ficheros (P2P). 1.3 Escenarios de utilización de las aplicaciones distribuidas. • Algunos escenarios que utilizan aplicaciones distribuidas son: 1.4 Problemas comunes en el desarrollo y uso de aplicaciones distribuidas Concurrencia: De igual forma que en las aplicaciones centralizadas, las aplicaciones distribuidas serán utilizadas por cierto número de usuarios concurrentemente. Aspectos como las transacciones, los bloqueos de recursos o el uso de la CPU de los equipos a los que acceden muchos usuarios son determinantes a la hora de diseñar una arquitectura con la máxima eficacia. 1.4 Problemas comunes en el desarrollo y uso de aplicaciones distribuidas Topología de la red: A pesar de que a día de hoy los anchos de banda cada vez son más amplios, el tráfico de red puede ser un aspecto importante que condicione el tiempo de respuesta de la aplicación. En muchos casos también será necesario tener en cuenta el tipo de red (LAN o WAN), o si la aplicación será o no accesible a través de Internet. La forma de distribuir los procesos de la aplicación tendrá que tomar en consideración el tipo de red que soportará el tráfico de datos. 1.4 Problemas comunes en el desarrollo y uso de aplicaciones distribuidas Ubicación de la lógica: Dado que en una aplicación distribuida intervienen varios procesos, será necesario decidir en cuál de los posibles procesos físicos se sitúa cada componente lógico de la aplicación. Mientras que algunos procesos, como la presentación de datos o la recuperación de los mismos, tienen un sitio natural, otros, como la validación o la navegación, pueden ocupar diversos lugares dentro del diagrama que conforma la estructura de la aplicación. 1.4 Problemas comunes en el desarrollo y uso de aplicaciones distribuidas Plataformas: En una aplicación distribuida los sistemas operativos involucrados o los lenguajes de desarrollo utilizados pueden ser un factor a tener en cuenta a la hora de decidir algunos aspectos importantes, como por ejemplo el modo de pasar datos entre procesos. 1.4 Problemas comunes en el desarrollo y uso de aplicaciones distribuidas Seguridad: Una aplicación distribuida mantiene procesos que de una forma u otra están a la escucha en una red, lo que aumenta la vulnerabilidad de la aplicación. Será necesario establecer políticas de seguridad que impidan el acceso no autorizado a los procesos. Pedir al usuario un nombre y una contraseña al iniciar el programa es probable que no sea suficiente, puede ser necesario además autorizar a los usuarios para acceder a los recursos, encriptar la información que viaja por la red, evitar ataques de denegación de servicio. 1.4 Problemas comunes en el desarrollo y uso de aplicaciones distribuidas Otros: Disponibilidad de los servidores. Acceso a los sistemas de manera remota. Posibilidad de que pueden ser vistos (pero no accesados) por muchas personas. Capacidad de los equipos donde se almacenan las fuentes. 1.4 Problemas comunes en el desarrollo y uso de aplicaciones distribuidas Otros
• Fallas del Cliente: El servidor debe saber cómo
responder a las fallas del cliente. 1.4 Problemas comunes en el desarrollo y uso de aplicaciones distribuidas • Reintento de llamadas: Si por ejemplo, se hace una llamada a un método en un servidor para generar una orden de compra muy grande, y el servidor responde pero se pierde la respuesta por fallas de red, no es muy eficiente volver a enviar la orden de compra. 1.4 Problemas comunes en el desarrollo y uso de aplicaciones distribuidas • Sincronización de la hora: Hay operaciones que dependen de la fecha y la hora. Por ejemplo, no es lógico en una aplicación procesar un envío de mercadería antes de haber recibido la orden de compra. Si el cliente y el servidor tienen fechas distintas, se debe generar un mecanismo de sincronización de hora para evitar este problema. Fuentes http://www.tutoriales.itsa.edu.mx/Desarrollo DeAplicaciones/index.php?mod=escenarios&b an=0