La programación reactiva, o Reactive Programming, es un paradigma enfocado en el trabajo con flujos de datos finitos o infinitos de manera asíncrona, permitiendo que estos datos se propaguen generando cambios en la aplicación, es decir, “reaccionan” a los datos ejecutando una serie de eventos La programación reactiva está relacionada con el patrón de diseño Observer: cuando hay un cambio de estado en un objeto, los otros objetos son notificados y actualizados acorde. Por lo tanto, en lugar de sondear eventos para los cambios, los eventos se realizan de forma asíncrona para que los observadores puedan procesarlos. Utilizando programación asíncrona, la idea es simple: disminuir el uso ineficiente de recursos usando recursos que, de lo contrario, estarían inactivos, ya que permanecen a la espera de actividad de algún componente. Los nuevos datos se notifican a los clientes en vez de tener que solicitarlos, debido a que la entrada y salida de datos es asíncrona. Por ello se invierte el diseño normal del procesamiento de entrada y salida. Este enfoque libera al cliente para hacer otras cosas mientras espera nuevas notificaciones. Quarkus soporta programación imperativa y reactiva. Quarkus usa Vert.x y Netty como parte de su core. Este usa una gran cantidad de frameworks reactivos y extensiones para ayudar a los desarrolladores. Quarkus no es sólo para micro servicios HTTP, también nos es útil para arquitecturas orientadas a eventos. Su naturaleza reactiva lo hace eficiente cuando tiene que trabajar con mensajes (ejemplo: Apache Kafka o AMQP). En esta charla veremos como implementar ciertos escenarios reactivos con Quarkus.

Acerca del Speaker

PERU JUG Leader, Java Champion, Arquitecto en Farmacias Peruanas y Fundador de JoeDayz.pe

Programación Reactiva con Quarkus

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *