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. Learn more β
Top 23 Concurrency Open-Source Projects
-
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.
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
-
burn
Burn is a new comprehensive dynamic Deep Learning Framework built using Rust with extreme flexibility, compute efficiency and portability as its primary goals.
-
Concurrent Ruby
Modern concurrency tools including agents, futures, promises, thread pools, supervisors, and more. Inspired by Erlang, Clojure, Scala, Go, Java, JavaScript, and classic concurrency patterns.
-
Akka.net
Canonical actor model implementation for .NET with local + distributed actors in C# and F#.
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
Project mention: Surprisingly Powerful β Serverless WASM with Rust Article 1 | dev.to | 2024-04-27Yew is a framework for creating reliable and efficient web applications. Yew
We use Jest Framework for testing. Jest is not a dogma, and, of course, in its place can be any other test runner, such as Mocha or Ava. Let's focus on tests. I'll provide a short example because I donβt want to waste your time. You can find the full version here. It's crucial to read the comments in the code below. Let's go!
Swoole
https://lmax-exchange.github.io/disruptor/#_what_is_the_disr.... Unfortunately IIUC writing this in Go still prevents the spin-locked acceptor thread from achieving the kind of performance you could get in a non-GC language, unless you chose to disable GC, so I'd guess Envoy is still faster.
https://gnet.host/docs/quickstart/ it's nice that you can use this simply though. Envoy is kind of tricky to setup with custom filters, so most of the time it's just a standalone binary.
[0] https://blog.envoyproxy.io/envoy-threading-model-a8d44b92231...
[1] https://lmax-exchange.github.io/disruptor/#_what_is_the_disr...
Project mention: Spark β A web micro framework for Java and Kotlin | news.ycombinator.com | 2024-02-10https://vertx.io/
It's actively maintained with full time developers, performant, supports Kotlin out of the box, and has more features?
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.
BLoC Library - Learn how to use the BLoC pattern for state management
Project mention: Rayon: Data-race free parallelization of sequential computations in Rust | news.ycombinator.com | 2024-04-24
We should chat more about Reminders v2 - I want to learn more about what you'd like it to provide. Can you comment on the issue (https://github.com/dotnet/orleans/issues/7573)? If you'd like to see some of what is in the works, please message me on Discord and we can chat more about it (https://aka.ms/orleans/discord)
For parallel programming nowadays, personally I reach for C++ Taskflow when I really care about performance, or a mix of core.async and running multiple load balanced instances when Iβm doing more traditional web backend stuff in Clojure.
Slightly OT:
Are ZeroMQ and NanoMQ still widely used (and recommended)?
https://github.com/zeromq/libzmq
https://github.com/nanomq/nanomq
It's a pity Go didn't have structured concurrency: https://vorpus.org/blog/notes-on-structured-concurrency-or-g...
There's a library for it: https://github.com/sourcegraph/conc
But this goes to one of the things I've been kind of banging on about languages, which is that if it's not in the language, or at least the standard library right at the beginning, sometimes it almost might as well not exist. Sometimes a new language can be valuable, even if it has no "new" language features, just to get a chance to reboot the standard library it has and push for patterns that older languages are theoretically capable of, but they just don't play well with any of the libraries in the language. Having it as a much-later 3rd party library just isn't good enough.
(In fact if I ever saw a new language start up and that was basically its pitch, I'd be very intrigued; it would show a lot of maturity in the language designer.)
Project mention: Top 10 Rusty Repositories for you to start your Open Source Journey | dev.to | 2023-12-199. Actix
Project mention: 3 years of fulltime Rust game development, and why we're leaving Rust behind | news.ycombinator.com | 2024-04-26You can use libtorch directly via `tch-rs`, and at present I'm porting over to Burn (see https://burn.dev) which appears incredibly promising. My impression is it's in a good place, if of course not close to the ecosystem of Python/C++. At very least I've gotten my nn models training and running without too much difficulty. (I'm moving to Burn for the thread safety - their `Tensor` impl is `Sync` - libtorch doesn't have such a guarantee.)
Burn has Candle as one of its backends, which I understand is also quite popular.
Project mention: Hyperbridge: Fast multi-producer, multi-consumer unbounded channel in Rust | news.ycombinator.com | 2024-02-09Crossbeam isn't async[0]. It can multiplex with itself (via the `select!` macro), but not with anything else.
[0]: https://github.com/crossbeam-rs/crossbeam/issues/896
akka.net actors. Actors all the way! https://getakka.net
Concurrency related posts
-
A more natural API for JavaScript generators
-
Rayon: Data-race free parallelization of sequential computations in Rust
-
How to Build a Robust Web Scraper with Laravel: and Catch 'Em All
-
The Case of a Leaky Goroutine
-
Eio 1.0 Release: Introducing a new Effects-Based I/O Library for OCaml
-
A Tour of Go Examples in Ruby
-
Simon Peyton Jones β Haskell is useless [video]
-
A note from our sponsor - InfluxDB
www.influxdata.com | 8 May 2024
Index
What are some of the best open-source Concurrency projects? This list will help you:
Project | Stars | |
---|---|---|
1 | yew | 29,948 |
2 | ava | 20,623 |
3 | Swoole | 18,229 |
4 | Disruptor | 17,037 |
5 | Vert.x | 14,080 |
6 | Akka | 12,931 |
7 | bloc | 11,422 |
8 | rayon | 10,277 |
9 | Orleans | 9,841 |
10 | Taskflow | 9,577 |
11 | ZeroMQ | 9,293 |
12 | moodycamel | 8,853 |
13 | system_design | 8,530 |
14 | conc | 8,444 |
15 | actix | 8,394 |
16 | yazi | 8,151 |
17 | Android-RxJava | 7,551 |
18 | burn | 7,169 |
19 | crossbeam | 6,858 |
20 | Concurrent Ruby | 5,629 |
21 | RxGo | 4,863 |
22 | Akka.net | 4,620 |
23 | promise-fun | 4,585 |
Sponsored