2. 新增功能
2.1. 自 2.8 以来 2.9 中的新增功能
本节介绍从版本 2.8 到版本 2.9 所做的更改。 有关早期版本的更改,请参阅更改历史记录。
2.1.2. 错误处理程序更改
现在可以将 配置为暂停容器进行一次轮询,并使用上一次轮询的剩余结果,而不是寻找剩余记录的偏移量。
有关更多信息,请参阅 DefaultErrorHandler。DefaultErrorHandler
现在有一个属性。
有关更多信息,请参见 Back Off Handlers。DefaultErrorHandler
BackOffHandler
2.1.3. 侦听器容器更改
interceptBeforeTx
现在适用于所有事务管理器(以前仅在使用 a 时应用)。
参见 [interceptBeforeTx]。KafkaAwareTransactionManager
提供了一个新的 container 属性,该属性允许容器在处理当前记录后暂停使用者,而不是在处理了上一次轮询中的所有记录之后。
请参阅 [pauseImmediate]。pauseImmediate
与消费者身份验证和授权相关的事件
2.1.4. Header Mapper 更改
您现在可以配置应映射的入站标头。 在版本 2.8.8 或更高版本中也可用。 有关更多信息,请参阅 Message Headers 。
2.1.5. 更改KafkaTemplate
在 3.0 中,该类返回的 future 将是 s 而不是 s。
请参阅使用 KafkaTemplate
以获取有关使用此版本时进行过渡的帮助。CompletableFuture
ListenableFuture
2.1.6. 更改ReplyingKafkaTemplate
该模板现在提供了一种在回复容器上等待分配的方法,以避免在初始化回复容器之前发送请求时发生争用。
在版本 2.8.8 或更高版本中也可用。
请参见使用 ReplyingKafkaTemplate
。
在 3.0 中,该类返回的 future 将是 s 而不是 s。
有关使用此版本时过渡的帮助,请参阅使用 ReplyingKafkaTemplate
和 使用 Message<?>
请求/回复。CompletableFuture
ListenableFuture
2.2. JsonDeserializer(自 2.9.13 起)
发生反序列化异常时,消息不再包含格式为 ;每个数据字节的数值数组没有用,对于大数据来说可能很详细。
与 一起使用时 ,发送到错误处理程序包含包含无法反序列化的原始数据的属性。
当不与 一起使用时,将持续为同一记录发出异常,显示 topic/partition/offset 和 Jackson 引发的原因。SerializationException
Can’t deserialize data [[123, 34, 98, 97, 122, …
ErrorHandlingDeserializer
DeserializationException
data
ErrorHandlingDeserializer
KafkaConsumer