kafka有异步请求/响应java api吗?

Dea*_*ler 7 apache-kafka

我们宁愿在生产者上使用像这样的异步请求/响应

private class MyCallback implements ResponseCallback {
    public void response(Response r) {
        //handle failure or success.  If success, ack the upstream kafka
    }
}
producer.send(request, callback);
Run Code Online (Sandbox Code Playgroud)

我唯一看到的是将producer.type设置为asynch,但调用只是一个异步请求而不等待任何响应......

producer.send(request);
Run Code Online (Sandbox Code Playgroud)

这不幸地迫使我进行同步,这意味着在加载时,我的线程在kafka上等待可能会开始减慢速度,因为我更愿意只用一堆请求猛击kafka并在我不断发送请求时收到响应.

谢谢,迪恩

Seb*_*ian 0

看来 Kafka 正在进行一项不错的工作,将引入异步调用模式,请查看:消费者生产者

目前,您可以使用标准 Callable/Executors 并使用 Google Guava 优秀的ListenableFuture向它们添加回调。您还可以探索Netflix 的Hystrix以获取更多(复杂且灵活)的调用模式。