you can configure that, to block or to fail:
http://kafka.apache.org/documentation.html#producerconfigs

By default it should block

On Tue, Aug 18, 2015 at 4:57 PM, Yuheng Du <yuheng.du.h...@gmail.com> wrote:

> I see. So the internal queue overwrites the producer buffer size
> configuration? When buffer is full the producer will block sending, right?
>
> On Tue, Aug 18, 2015 at 3:52 PM, Tao Feng <fengta...@gmail.com> wrote:
>
> > From what I understand, if you set the throughput to -1, the
> > producerperformance will push records as much as possible to an internal
> > per topic per partition queue. In the background there is a sender IO
> > thread handling the actual record sending process. If you push record to
> > the queue faster than the send rate, your queue  will become longer and
> > longer, eventually record latency will become meaningless for a
> > latency-purpose test.
> >
> >
> > On Tue, Aug 18, 2015 at 11:48 AM, Yuheng Du <yuheng.du.h...@gmail.com>
> > wrote:
> >
> > > I see. Thank you Tao. But now I don't get it what Jay said that my
> > latency
> > > test only makes sense if I set a fixed throughput. Why do I need to
> set a
> > > fixed throughput for my test instead of just set the expected
> throughput
> > to
> > > be -1 (as much as possible)?
> > >
> > > Thanks.
> > >
> > > On Tue, Aug 18, 2015 at 2:43 PM, Tao Feng <fengta...@gmail.com> wrote:
> > >
> > > > Hi Yuheng,
> > > >
> > > > The 10000 record/s is just a param for producerperformance for your
> > > > producer target tput. It only takes effect to do the throttling if
> you
> > > > tries to send more than 10000 record/s.  The actual tput of the test
> > > > depends on your producer config and your setup.
> > > >
> > > > -Tao
> > > >
> > > > On Tue, Aug 18, 2015 at 11:34 AM, Yuheng Du <
> yuheng.du.h...@gmail.com>
> > > > wrote:
> > > >
> > > > > Also, When I set the target throughput to be 10000 records/s, The
> > > actual
> > > > > test results show I got an average of 579.86 records per second
> among
> > > all
> > > > > my producers. How did that happen? Why this number is not 10000
> then?
> > > > > Thanks.
> > > > >
> > > > > On Tue, Aug 18, 2015 at 10:03 AM, Yuheng Du <
> > yuheng.du.h...@gmail.com>
> > > > > wrote:
> > > > >
> > > > > > Thank you Jay, that really helps!
> > > > > >
> > > > > > Kishore, Where you can monitor whether the network is busy on IO
> in
> > > > > visual
> > > > > > vm? Thanks. I am running 90 producer process on 90 physical
> > machines
> > > in
> > > > > the
> > > > > > experiment.
> > > > > >
> > > > > > On Tue, Aug 18, 2015 at 1:19 AM, Jay Kreps <j...@confluent.io>
> > wrote:
> > > > > >
> > > > > >> Yuheng,
> > > > > >>
> > > > > >> From the command you gave it looks like you are configuring the
> > perf
> > > > > test
> > > > > >> to send data as fast as possible (the -1 for target throughput).
> > > This
> > > > > >> means
> > > > > >> it will always queue up a bunch of unsent data until the buffer
> is
> > > > > >> exhausted and then block. The larger the buffer, the bigger the
> > > queue.
> > > > > >> This
> > > > > >> is where the latency comes from. This is exactly what you would
> > > expect
> > > > > and
> > > > > >> what the buffering is supposed to do.
> > > > > >>
> > > > > >> If you want to measure latency this test doesn't really make
> > sense,
> > > > you
> > > > > >> need to measure with some fixed throughput. Instead of -1 enter
> > the
> > > > > target
> > > > > >> throughput you want to measure latency at (e.g. 100000
> > records/sec).
> > > > > >>
> > > > > >> -Jay
> > > > > >>
> > > > > >> On Thu, Aug 13, 2015 at 12:18 PM, Yuheng Du <
> > > yuheng.du.h...@gmail.com
> > > > >
> > > > > >> wrote:
> > > > > >>
> > > > > >> > Thank you Alvaro,
> > > > > >> >
> > > > > >> > How to use sync producers? I am running the standard
> > > > > ProducerPerformance
> > > > > >> > test from kafka to measure the latency of each message to send
> > > from
> > > > > >> > producer to broker only.
> > > > > >> > The command is like "bin/kafka-run-class.sh
> > > > > >> > org.apache.kafka.clients.tools.ProducerPerformance test7
> > 50000000
> > > > 100
> > > > > -1
> > > > > >> > acks=1 bootstrap.servers=esv4-hcl198.grid.linkedin.com:9092
> > > > > >> > buffer.memory=67108864 batch.size=8196"
> > > > > >> >
> > > > > >> > For running producers, where should I put the
> producer.type=sync
> > > > > >> > configuration into? The config/server.properties? Also Does
> this
> > > > mean
> > > > > we
> > > > > >> > are using batch size of 1? Which version of Kafka are you
> using?
> > > > > >> > thanks.
> > > > > >> >
> > > > > >> > On Thu, Aug 13, 2015 at 3:01 PM, Alvaro Gareppe <
> > > agare...@gmail.com
> > > > >
> > > > > >> > wrote:
> > > > > >> >
> > > > > >> > > Are you measuring latency as time between producer and
> > consumer
> > > ?
> > > > > >> > >
> > > > > >> > > In that case, the ack shouldn't affect the latency, cause
> even
> > > > tough
> > > > > >> your
> > > > > >> > > producer is not going to wait for the ack, the consumer will
> > > only
> > > > > get
> > > > > >> the
> > > > > >> > > message after its commited in the server.
> > > > > >> > >
> > > > > >> > > About latency my best result occur with sync producers, but
> > the
> > > > > >> > throughput
> > > > > >> > > is much lower in that case.
> > > > > >> > >
> > > > > >> > > About not flushing to disk I'm pretty sure that it's not an
> > > option
> > > > > in
> > > > > >> > kafka
> > > > > >> > > (correct me if I'm wrong)
> > > > > >> > >
> > > > > >> > > Regards,
> > > > > >> > > Alvaro Gareppe
> > > > > >> > >
> > > > > >> > > On Thu, Aug 13, 2015 at 12:59 PM, Yuheng Du <
> > > > > yuheng.du.h...@gmail.com
> > > > > >> >
> > > > > >> > > wrote:
> > > > > >> > >
> > > > > >> > > > Also, the latency results show no major difference when
> > using
> > > > > ack=0
> > > > > >> or
> > > > > >> > > > ack=1. Why is that?
> > > > > >> > > >
> > > > > >> > > > On Thu, Aug 13, 2015 at 11:51 AM, Yuheng Du <
> > > > > >> yuheng.du.h...@gmail.com>
> > > > > >> > > > wrote:
> > > > > >> > > >
> > > > > >> > > > > I am running an experiment where 92 producers is
> > publishing
> > > > data
> > > > > >> > into 6
> > > > > >> > > > > brokers and 10 consumer are reading online data
> > > > simultaneously.
> > > > > >> > > > >
> > > > > >> > > > > How should I do to reduce the latency? Currently when I
> > run
> > > > the
> > > > > >> > > producer
> > > > > >> > > > > performance test the average latency is around 10s.
> > > > > >> > > > >
> > > > > >> > > > > Should I disable log.flush? How to do that? Thanks.
> > > > > >> > > > >
> > > > > >> > > >
> > > > > >> > >
> > > > > >> > >
> > > > > >> > >
> > > > > >> > > --
> > > > > >> > > Ing. Alvaro Gareppe
> > > > > >> > > agare...@gmail.com
> > > > > >> > >
> > > > > >> >
> > > > > >>
> > > > > >
> > > > > >
> > > > >
> > > >
> > >
> >
>



-- 
Ing. Alvaro Gareppe
agare...@gmail.com

Reply via email to