Kafka 攔截器(interceptor)可以作用在 producer 和 consumer 兩端,這裏先了解下 producer 攔截器。
對於producer而言,interceptor使得用戶在消息發送前以及producer回調邏輯前有機會對消息做壹些定制化需求,比如修改消息等。可以定義多個攔截器,形成壹個鏈。
我們開發攔截器時,需實現 org.apache.kafka.clients.producer.ProducerInterceptor 接口,其中有2個主要方法:
我們定義2個攔截器:
攔截器1:
攔截器2:
可以看到序列化後的User對象。