异步写入 spring 云 kafka 流

Asynchronously write to spring cloud kafka stream

我想异步写入 spring 云 kafka 流。例如

Class SomeClass{

@StreamLister(Processor.INPUT)
public void receiveEvents(String e){

  class ThreadExecutor implements Runnable {
  private String message;

    public ThreadExecutor(message){
        this.message = message;
    }

    public void run(){
        //after processing the string I will publish it
         message = message + "done";
         writeToStream(message);
     }
   }

   Executors.newCachedThreadPool().execute(new ThreadExecutor(e));
}

@SendTo //not sure how to write it back
public Message<String> writeToStream(String message){
   //this is what I want to know
  }

}

所以在上面的例子中。我想知道如何调用 writeToStream 方法,以便它写回 kafka。与轮询不同,基本上我想在任务完成时写入流。请帮忙

@Autowired
private MessageChannel output;

...

    output.send(MessageBuilder.withPayload(data).build());

但是,不清楚您为什么需要这个;默认情况下,kafka 发送已经是异步的。