fastglobal VS kafka_ex

Compare fastglobal vs kafka_ex and see what are their differences.

fastglobal

Fast no copy globals for Elixir & Erlang. (by discord)

kafka_ex

Kafka client library for Elixir (by kafkaex)
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
fastglobal kafka_ex
2 1
1,126 591
0.0% 0.2%
0.0 7.0
about 1 year ago 11 days ago
Elixir Elixir
MIT License MIT License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

fastglobal

Posts with mentions or reviews of fastglobal. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-09-23.
  • Show HN: I rewrote the 1990's LambdaMOO server from scratch
    8 projects | news.ycombinator.com | 23 Sep 2023
    > State has to be owned by a process - who owns the state of the world? ... Keep in mind, when data is passed "between" processes it is deep copied.

    The Erlang runtime has other stateful things besides processes, and manipulating data within these and/or getting a handle on data in these places doesn't necessarily involve copying.

    • ETS tables, which hold state privately to themselves (with copying in/out) in a similar way to how processes do. If you manipulate data inside ETS tables by "sending compute to data" (think Redis INCR) rather than by "sending data to compute", then no copying happens.

    • "Globals" in the form of data compiled into read-only versioned modules loaded into the modules table and available to be referenced from any/all active processes, only copied if the module gets unloaded before the process dies. (Originally this was just a design pattern — https://github.com/discord/fastglobal — but it eventually became its own runtime feature in Erlang 22, https://www.erlang.org/doc/man/persistent_term).

    • Large binaries (anything over 64 bytes) aren't allocated in an actor's memory arena, but instead are allocated in a special global-per-node binaries heap, and then ref-counted, where each actor-process holds one reference to each large-binary it's using, and then each read-only slice of that binary, in turn holds a reference to the per-actor reference handle for the binary. One clever technique for sharing a large "database" of data between many actors, is to store the data encoded in a large binary in an encoding that is efficient to partwise-decode; and have the "lookup" operation just parse+decode the appropriate data out of the binary. (This is how erlang:module_info/2 used to work — the global modules-table itself holding a set of references to the loaded modules' binaries, which module_info would then parse metadata out of on demand.)

  • Issue
    1 project | /r/Pionex | 14 Dec 2021

kafka_ex

Posts with mentions or reviews of kafka_ex. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2021-07-15.
  • Help With Protobuf in Kafka
    2 projects | /r/elixir | 15 Jul 2021
    I am roughly 3 weeks into working with Elixir and so far it has been pretty good! I currently am working in a system that has a couple of Golang services running as producers and consumers within a Kafka cluster. I've been working with the Kafka_ex library and have been able to get messages and create topics. It was decided that messages being sent through Kafka would be in Protobuf format, so I've started to use this protobuf library to handle converting into structs.

What are some alternatives?

When comparing fastglobal and kafka_ex you can also consider the following projects:

mudmixer - MUDMixer is an add-on for MUD clients that enriches the gaming experience with connection mixing functionality and a variety of other features.

oban - 💎 Robust job processing in Elixir, backed by modern PostgreSQL and SQLite3

mica

broadway - Concurrent and multi-stage data ingestion and data processing with Elixir

wireguardex - Configure WireGuard® interfaces in Elixir using Rust NIFs.

elixir_nsq - An NSQ client for Elixir and Erlang, written in Elixir.

nmoo - An enhanced LambdaMOO-like MOO

dbus - A dumb message bus for sharing data between microservices in a relatively decoupled mechanism

ex_hash_ring - A fast consistent hash ring implementation in Elixir.

Cafex - Cafex is a pure Elixir implementation of Kafka client

tinyfugue - TinyFugue - Rebirth

adap - Create a data stream across your information systems to query, augment and transform data according to Elixir matching rules.