Comments (6)
Hi @sweco-semtne,
Unfortunately it isn't possible at the moment. If @sdball / @objectuser aren't opposed to it, I'd be happy to add an additional start_link
to Kaffe.Consumer
that allowed a configuration to be passed in, rather than using Kaffe.Consumer.Config
This is a use-case I have too, by the way. For the time being, I've adding my extra consumers directly through :brod
from kaffe.
So the only change would be the addition of a start_link(config)
function that would call the same start_link_group_subscriber
function with the salient pieces? That sounds entirely reasonable to me.
Then you could have several worker declarations, each its own consumer and specialized config. That's a great impact for a minimal code change! 👍
from kaffe.
@sweco-semtne If you're using Kaffe.Consumer
, the solution proposed by @rawkode does sound like an easy win.
I wanted to note that there are two modes of consuming messages in Kaffe and the Kaffe.GroupMemberSupervisor
has some advantages discussed here. However, it wouldn't be quite as straight forward to allow it to consume from multiple clusters.
from kaffe.
Thanks!
Kaffe.GroupMemberSupervisor seems interesting.
How would you setup multiple Kaffe.GroupMemberSupervisor with multiple topics (using the same cluster)?
from kaffe.
@sweco-semtne The topics
list in the consumer
config should allow for multiple topics, using only a single GroupMemberSupervisor
. It's only if you're trying to use two clusters in the node that Kaffe would need an enhancement:
config :kaffe,
consumer: [
heroku_kafka_env: true,
topics: ["topic1", "topic2"],
consumer_group: "my-group",
message_handler: MyHandlerModule,
]
Is that answering your question? If you really need two GroupMemberSupervisor
s, it's a bit tricker, but GroupMemberStartupTest
might provide a work-around.
from kaffe.
Closing stale question.
from kaffe.
Related Issues (20)
- Defining multiple handlers HOT 1
- worker_per_topic_partition with multiple topics HOT 1
- Examples not compatible with Elixir 1.10 or 1.11 HOT 2
- extract_der is giving error with SSL HOT 2
- Undefined function exponential_backoff HOT 10
- Offset doesn't get updated between runs and runs crash with OOM errors HOT 4
- async ack - lots of duplicate messages until I restart the application HOT 2
- Kaffe.Producer.produce_sync raises on timeout
- How to set kafka headers when publishing message HOT 1
- Invalid call to raise/reraise on brod/kpro error
- Add support for SCRAM mechanism in SASL authentication. HOT 1
- Module to help write ExUnit tests
- It's impossible to create 2 separate consumers for different topics
- Running mix with kaffe deps fails to download pc package from hex
- Wrong place for configuration
- Repeated rebalance cycle with kafka broker 2.3.0 HOT 16
- kaffe cannot recover from unreachable Kafka HOT 18
- Missing documentation HOT 8
- Connecting to a TLS-based Kafka instance under AWS MSK? HOT 18
- Receives notification when rebalance in progress/assignments revoked HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from kaffe.