Usando RxPHP

Originalmente desarrollado por Microsoft para la plataforma .NET, un conjunto de bibliotecas llamadas ReactiveX (extensiones reactivas) está disponible en http://reactivex.io. ReactiveX nos permite escribir programas asincrónicos y basados en eventos usando secuencias observables. Lo hacen abstrayendo preocupaciones de bajo nivel como E/S sin bloqueo, de las que hablaremos más adelante. Con el tiempo, varios lenguajes de programación hicieron sus propias implementaciones de ReactiveX, siguiendo un patrón de diseño casi idéntico. La implementación de PHP, denominada RxPHP, se puede descargar desde https://github.com/ReactiveX/RxPHP:

Instalando RxPHP

La biblioteca RxPHP está disponible como un paquete Composer reactivex/rxphp. Suponiendo que ya hayamos instalado PHP y Composer, simplemente podemos ejecutar el siguiente comando en un directorio vacío:

composer require reactivex/rxphp

Esto debería darnos una salida similar a la siguiente:

La salida sugiere instalar react/event-loop; debemos asegurarnos de seguir ejecutando el siguiente comando:

composer require react/event-loop

Esto debería darnos una salida muy similar a la siguiente:

Todo lo que queda ahora es crear un archivo index.php, que incluye el archivo autoload.php generado por Composer, y estamos listos para comenzar a jugar.

La biblioteca RxPHP se compone de varios componentes clave, siendo los más básicos los siguientes:

  • Observable
  • Observer
  • Subject
  • Operator

En el futuro, echemos un vistazo más de cerca a cada uno de estos componentes.

Comparte