我对@KafkaListener的理解是通过将侦听器方法的参数类型与消息类型进行匹配来消耗消息。
没有匹配的侦听器的邮件会发生什么?
答案 0 :(得分:1)
您的意思不清楚。是什么让您相信这一点?
@KafkaListener
上的{p} Method
表示每种方法都有一个使用者(侦听器容器),因此所有方法都将获得所有记录(除非它们在同一个使用者组中,或者您手动分配了分区)。 / p>
@KafkaListener
上的
Class
意味着您必须用@KafkaHandler
注释多个方法,并且框架将基于反序列化的有效负载找到要调用的处理程序方法;值反序列化器必须能够反序列化预期的多种类型。
您可以精确地指定一个@KafkaHandler
作为default
处理程序(如果不匹配,则调用该处理程序)-通常使用一个Object
参数。
如果没有匹配项,也没有默认的处理程序方法,那么记录将转到已配置的ErrorHandler
。
默认错误处理程序记录了故障,但是您可以添加自己的操作来执行所需的操作。