Kafka发送不同确认方式的性能差异

背景

Kafka的性能众所周知,Producer支持acknowledge模式。即Kafka会想Producer返回消息发送的结果。但是在Java Client中,acknowledge的确认有两种:同步和异步。 同步是通过调用future.get()实现的;异步则是通过提供callback方法来实现。写了个简单的程序测试一下单线程中吞吐差异能有多大。注意这里只考虑横向对比。

测试工具

future.get() + batch size =1

future.get() + batch size = 16K

callback + batch size = 16k

callback + batch size = 1

Comments

comments powered by Disqus