In my mind, this isn't really a producer vs consumer distinction, this is a
broker vs zookeeper distinction.

The producer apis talk to brokers. The low level consumer api (what direct
stream uses) also talks to brokers.  The high level consumer api talks to
zookeeper, at least initially.

TLDR; don't worry about it, just specify either of metadata.broker.list or
bootstrap.servers, using the exact same "host:port,host:port" format, and
you're good to go.


On Wed, May 13, 2015 at 9:03 AM, James King <jakwebin...@gmail.com> wrote:

> Looking at Consumer Configs in
> http://kafka.apache.org/documentation.html#consumerconfigs
>
> The properties  *metadata.broker.list* or *bootstrap.servers *are not
> mentioned.
>
> Should I need these for consume side?
>
> On Wed, May 13, 2015 at 3:52 PM, James King <jakwebin...@gmail.com> wrote:
>
>> Many thanks Cody and contributors for the help.
>>
>>
>> On Wed, May 13, 2015 at 3:44 PM, Cody Koeninger <c...@koeninger.org>
>> wrote:
>>
>>> Either one will work, there is no semantic difference.
>>>
>>> The reason I designed the direct api to accept both of those keys is
>>> because they were used to define lists of brokers in pre-existing Kafka
>>> project apis.  I don't know why the Kafka project chose to use 2 different
>>> configuration keys.
>>>
>>> On Wed, May 13, 2015 at 5:00 AM, James King <jakwebin...@gmail.com>
>>> wrote:
>>>
>>>> From:
>>>> http://spark.apache.org/docs/latest/streaming-kafka-integration.html
>>>>
>>>> I'm trying to use the direct approach to read messages form Kafka.
>>>>
>>>> Kafka is running as a cluster and configured with Zookeeper.
>>>>
>>>>  On the above page it mentions:
>>>>
>>>> "In the Kafka parameters, you must specify either
>>>> *metadata.broker.list* or *bootstrap.servers*.  ..."
>>>>
>>>> Can someone please explain the difference of between the two config
>>>> parameters?
>>>>
>>>> And which one is more relevant in my case?
>>>>
>>>> Regards
>>>> jk
>>>>
>>>
>>>
>>
>

Reply via email to