rxjava net framework java concurrency akka rx-java

net - ¿Diferencia entre Java Concurrency, Akka y RxJava?



rxjava gradle (2)

Hoy encontré que, para la concurrencia en Java, tenemos un buen marco como Akka y también encontré que hay un marco de programación reactivo como RxJava para realizar multithreading RxJava en la aplicación. ¡Pero todavía estoy confundido! ¿Por qué los dos son mejores que Java Concurrency ?

Hoy en día, la programación reactiva es un tema maduro, y la mayoría de los lenguajes tienen soporte para la Functional Reactive Programing como Netflix proporciona API con respecto a la Reactive programming para más de un idioma. Rxjava es una de las api que se utiliza para java , RxJava , etc.

Entonces, ¿cuál es la diferencia entre Akka y el enfoque de Reactive Programming y por qué son buenos desde Java Concurrency ?



Según Mathias Doenitz, en este momento, RxJava no tiene presión de retorno, a diferencia de la implementación de Akkas Reactive Streams. Pero RxJava parece estar trabajando en agregar presión de nuevo.

Ambos marcos podrán interactuar a través de la transmisión reactiva spi. Así podrás hacer cosas muy similares. Según Mathias, la diferencia será que la implementación de Akka se basa internamente en actores, no en subprocesos múltiples. Y como resultado será más performante.

Mi fuente para esta información es una charla que Mathias dio la semana pasada en el grupo de usuarios de Scala holandés.

Edición: Estoy de acuerdo con el soporte de contrapresión de wrt en RxJava. Si sigues el enlace de Eriks, puedes leer lo que significa contrapresión.