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.