AsyncMonitor: una herramienta web para apoyar la enseñanza de la comunicación asÃncrona en cursos de sistemas distribuidos / AsyncMonitor: A web tool to support teaching of asynchronous communication in distributed systems courses - Carlos R. Jaimez-González (RECI Revista Iberoamericana de las Ciencias Computacionales e Informática, 2018)
La comunicación asÃncrona en aplicaciones cliente-servidor es muy útil para ejecutar en un servidor procesos que toman una cantidad considerable de tiempo, evitando que el cliente sea bloqueado en espera de que el proceso finalice su ejecución. Dada la importancia de la comunicación asÃncrona en las aplicaciones distribuidas, en este artÃculo se presenta AsyncMonitor, una herramienta web que permite monitorear invocaciones de métodos asÃncronos en el framework Web Objects in XML (WOX) y que, al mismo tiempo, apoya la enseñanza de los conceptos de la comunicación asÃncrona en cursos de sistemas distribuidos.AsyncMonitor permite al alumno visualizar gráficamente una cola de procesos con sus respectivos estatus (pendiente, activo y completado), además de visualizar la representación de los objetos que son el resultado de la ejecución de los métodos asÃncronos. En el artÃculo también se describe la implementación de la comunicación asÃncrona en WOX, la cual utiliza los mecanismos de sondeo y transmisión, con lo cual es posible que una aplicación ejecute no solo métodos sÃncronos sobre objetos remotos, sino también asÃncronos.Se presentan las pruebas que se realizaron con el objetivo verificar la funcionalidad de AsyncMonitor para diferentes tareas: recibir solicitudes de invocaciones de métodos asÃncronos; la correcta ejecución de los métodos con sus estatus correspondientes; la visualización de los objetos resultantes, asÃ como la funcionalidad de los mecanismos de comunicación asÃncrona de sondeo y transmisión. Las pruebas contemplan 20 escenarios: 10 utilizando el mecanismo de comunicación asÃncrona de sondeo y 10 utilizando la técnica de transmisión. En cada escenario se mantuvo disponible un servidor WOX y cinco computadoras cliente, las cuales enviaron un número aleatorio de solicitudes de invocaciones de métodos asÃncronos al servidor WOX. Los resultados obtenidos en las pruebas realizadas son alentadores, ya que 100% de las solicitudes enviadas por las computadoras cliente al servidor WOX fueron encoladas en la cola de métodos, lo cual significa que el mecanismo para recepción de solicitudes y encolamiento funciona correctamente. Con respecto a los métodos que fueron encolados, 85% de ellos terminaron su ejecución; cambiaron adecuadamente su estatus y fue posible visualizar el resultado de su ejecución en el navegador web.