其他分享
首页 > 其他分享> > kafka 拦截器

kafka 拦截器

作者:互联网

kafka 拦截器

拦截器:允许应用程序在不修改逻辑的情况下,动态地实现一组可插拔的事件处理逻辑链。它能够在主业务操作的前后多个时间点上插入对应的“拦截”逻辑。

Spring MVC 拦截器视图:

kafka 拦截器:

Kafka 拦截器分为生产者拦截器消费者拦截器

这两种拦截器都支持链的方式,即你可以将一组拦截器串连成一个大的拦截器,Kafka 会按照添加顺序依次执行拦截器逻辑。

生产者端-拦截器

Properties props = new Properties();
List<String> interceptors = new ArrayList<>();
interceptors.add("com.yourcompany.kafkaproject.interceptors.AddTimestampInterceptor"); // 拦截器1
interceptors.add("com.yourcompany.kafkaproject.interceptors.UpdateCounterInterceptor"); // 拦截器2
props.put(ProducerConfig.INTERCEPTOR_CLASSES_CONFIG, interceptors);
……

Producer 端拦截器实现类都要实现 org.apache.kafka.clients.producer.ProducerInterceptor接口,该接口提供了两个核心方法:

消费者端-拦截器

Consumer 端拦截器实现类都要实现 org.apache.kafka.clients.consumer.ConsumerInterceptor 接口,该接口提供两个核心方法:

使用场景:

Kafka 拦截器可以应用于包括客户端监控、端到端系统性能检测、消息审计等多种功能在内的场景。

标签:逻辑,拦截器,interceptors,kafka,调用,方法
来源: https://www.cnblogs.com/shix0909/p/16579550.html