main
Kafka test
'At least once'
This is part 2 in a series of short articles. (part 1)
Kafka promises (among other things) to deliver a message 'at least once' with the correct configuration. This was tested with the combination of 3 binary options in a one-broker setup.
acks=0 vs. acks=1
There is also 'all' or '-1' but that doesn't make much difference in a one broker setup.
get() MetaData vs. not
When sending from a producer, you can call get() on the Future returned from the send method. It returns info from broker on partition, offset, timestamps and such. It could be seen as some kind of confirmation.
Stable vs. unstable consumer
To see if consumer behavior changes the outcome. The 'unstable' consumer was shut down every 60 seconds.
To add to the confusion a little bit, the broker in all tests was killed (-9) every ~10 minutes.
Please remember:
'This information is for educational purposes only and is not
intended to be a substitute for professional medical advice,
diagnosis, or treatment. Always seek the advice of your physician
or other qualified health provider with any questions you may have
regarding a medical condition.'
Or — as it is most likely
the case here: Be your own doctor.
Image: Ralph Burrows @ Pexels