Popularity
3.9
Stable
Activity
0.0
Stable
26
4
5
Monthly Downloads: 3
Programming language: Elixir
License: MIT License
Tags:
Queue
kafka_consumer alternatives and similar packages
Based on the "Queue" category.
Alternatively, view kafka_consumer alternatives based on common mentions on social networks and blogs.
-
kaffe
An opinionated Elixir wrapper around brod, the Erlang Kafka client, that supports encrypted connections to Heroku Kafka out of the box. -
task_bunny
TaskBunny is a background processing application written in Elixir and uses RabbitMQ as a messaging backend -
hulaaki
DISCONTINUED. DEPRECATED : An Elixir library (driver) for clients communicating with MQTT brokers(via the MQTT 3.1.1 protocol). -
adap
Create a data stream across your information systems to query, augment and transform data according to Elixir matching rules. -
exdisque
Elixir client for Disque (https://github.com/antirez/disque), an in-memory, distributed job queue.
CodeRabbit: AI Code Reviews for Developers
Revolutionize your code reviews with AI. CodeRabbit offers PR summaries, code walkthroughs, 1-click suggestions, and AST-based analysis. Boost productivity and code quality across all major languages with each PR.
Promo
coderabbit.ai

Do you think we are missing an alternative of kafka_consumer or a related project?
README
Kafka consumer
Scalable consumer for Kafka using brod.
Installation
If available in Hex, the package can be installed as:
- Add
kafka_consumer
to your list of dependencies inmix.exs
:
def deps do
[{:kafka_consumer, "~> 2.0"}]
end
- Ensure
kafka_consumer
is started before your application:
def application do
[applications: [:kafka_consumer]]
end
Usage
- Set config or pass default attributes
config :brod,
clients: [
kafka_client: [
endpoints: [{'localhost', 9092}],
auto_start_producers: true
]
]
- Write your own Consumer. Functions handle_async/1 and handle_sync/2 is overridable
defmodule KafkaConsumer.ExampleConsumer do
use KafkaConsumer.Consumer
def handle_async(_message) do
:ok
end
end
- Set event handlers in config.
config :kafka_consumer,
consumers: [
[client: :kafka_client,
group_id: "messaging",
topics: ["message-events", "system-events"],
callback: KafkaConsumer.ExampleConsumer,
callback_args: []]
]
- Define KafkaConsumer.Supervisor as child supervisor of your app.
children = [
supervisor(KafkaConsumer.Supervisor, []),
]
opts = [strategy: :one_for_one, name: YourApplication.Supervisor]
Supervisor.start_link(children, opts)
- Start your app.