Modern Async Primitives on iOS, Android, and the Web

This page summarizes the projects mentioned and recommended in the original post on dev.to

InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
  • AsyncExtensions

    AsyncExtensions aims to mimic Swift Combine operators for async sequences.

  • In that blog, John makes a note of the AsyncExtensions library, which has several cool Features like merge(), zip(), etc., that you'd expect from other stream/collections API surfaces.

  • reactor-core

    Non-Blocking Reactive Foundation for the JVM

  • Kotlin also has a construct for asynchronous collections/streams. Kotlin's version of AsyncSequence is called a Flow. Just as Swift's AsyncSequence builds upon prior experience with RxSwift and Combine, Kotlin's Flow APIs build upon earlier stream/collection APIs in the JVM ecosystem: Java's RxJava, Java8 Streams, Project Reactor, and Scala's Akka.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • Netty

    Netty project - an event-driven asynchronous network application framework

  • In this space, we also have the somewhat related term blocking. Java's NIO library is one well-known non-blocking tool used for managing multiple tasks on a single Java thread. When listening to sockets, most of the time a thread is just blocked, doing nothing until it receives some data. So, it's efficient to use a single thread for monitoring many sockets, to increase the likelihood of the thread having some actual work to do. The Selector API does this but is notoriously challenging to program well. Instead, developers use frameworks like Netty which abstract some of NIO's complexity and layer on some best practices.

  • Akka

    Build highly concurrent, distributed, and resilient message-driven applications on the JVM

  • Kotlin also has a construct for asynchronous collections/streams. Kotlin's version of AsyncSequence is called a Flow. Just as Swift's AsyncSequence builds upon prior experience with RxSwift and Combine, Kotlin's Flow APIs build upon earlier stream/collection APIs in the JVM ecosystem: Java's RxJava, Java8 Streams, Project Reactor, and Scala's Akka.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

  • Kalix: Move to the Cloud. Extend to the Edge. Go Beyond.

    1 project | dev.to | 13 Feb 2023
  • I have lots of downtime at work, is there anything I can do online to make extra money?

    1 project | /r/UKPersonalFinance | 19 Oct 2022
  • FogBugz Goes Dark

    1 project | news.ycombinator.com | 20 Sep 2022
  • Akka will no longer be Open Source

    2 projects | dev.to | 10 Sep 2022
  • Why We Are Changing the License for Akka

    2 projects | /r/scala | 7 Sep 2022